如何将动画附加到Android中的布局XML中的对象?

Can*_*ğlu 7 xml animation android android-4.0-ice-cream-sandwich

我在XML资源中定义了动画,我想将该动画附加到视图中.我知道如何在代码中手动执行此操作,但我想知道是否可以直接在布局声明中将该动画附加到视图中.就像是:

<ImageView android:animation="@anim/my_anim" />
Run Code Online (Sandbox Code Playgroud)

因此动画将自动播放而无需任何外部代码调用.这是否可以使用内置的Android SDK(我不是在寻找可以将其添加为插件功能的外部库)?如果有,怎么样?

NoC*_*uxe 9

答案是不.您必须在运行时附加动画.但它很容易做,应该只需要几行代码.例如,来自Android文档:

ImageView spaceshipImage = (ImageView) findViewById(R.id.spaceshipImage);
Animation hyperspaceJumpAnimation = AnimationUtils.loadAnimation(this, R.anim.hyperspace_jump);
spaceshipImage.startAnimation(hyperspaceJumpAnimation);
Run Code Online (Sandbox Code Playgroud)

  • 我没说不合理。这很容易,我已经在做。我只是想将尽可能多的逻辑移到声明中,而不是将代码隐藏在后面,我正在寻找一种将动画从代码移到声明中的方法。 (3认同)
  • 谢谢,但我已经知道如何通过代码动画视图:)我只是想知道如何在不编写代码的情况下以"全声明"方式进行操作. (2认同)
  • 好吧答案是否定的,你必须在代码中启动动画. (2认同)