android– 如何以编程方式为自定义视图(ImageView)设置动画?

android– 如何以编程方式为自定义视图(ImageView)设置动画?,第1张

概述我想以编程方式自定义视图设置动画.我希望它只在xml文件中声明它的位置动画,我不希望它弄乱布局.此动画也受其他因素的影响,因此androidAnimation类是不可能的.我已经测试了这个样本tutorial并观看了这个videos.我的问题是大多数教程都是为了将​​精灵设置为画布,你将在其中跟

我想以编程方式为自定义视图设置动画.我希望它只在xml文件中声明它的位置动画,我不希望它弄乱布局.此动画也受其他因素的影响,因此android Animation类是不可能的.

我已经测试了这个样本tutorial并观看了这个videos.我的问题是大多数教程都是为了将​​精灵设置为画布,你将在其中跟踪精灵的位置.

如何在不影响布局且不使用AndroID Animation类的情况下为自定义视图设置动画?

编辑:
自定义视图将充当动画gif,并在事件激活时切换另一组帧.

解决方法:

如果你想要像动画gif一样“运行”的“逐帧”动画,你可以遵循:
drawable-animation official tutorial.

引用教程:

<animation-List xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:oneshot="true">    <item androID:drawable="@drawable/rocket_thrust1" androID:duration="200" />    <item androID:drawable="@drawable/rocket_thrust2" androID:duration="200" />    <item androID:drawable="@drawable/rocket_thrust3" androID:duration="200" /></animation-List>

并在你的代码中

AnimationDrawable rocketAnimation;public voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.main);  ImageVIEw rocketimage = (ImageVIEw) findVIEwByID(R.ID.rocket_image);  rocketimage.setBackgroundResource(R.drawable.rocket_thrust);  rocketAnimation = (AnimationDrawable) rocketimage.getBackground();}public boolean ontouchEvent(MotionEvent event) {  if (event.getAction() == MotionEvent.ACTION_DOWN) {    rocketAnimation.start();    return true;  }  return super.ontouchEvent(event);}
总结

以上是内存溢出为你收集整理的android – 如何以编程方式为自定义视图(ImageView)设置动画?全部内容,希望文章能够帮你解决android – 如何以编程方式为自定义视图(ImageView)设置动画?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1114249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存