Android 图像视图移动和旋转的动画
Android animation of image view moving and rotating
我想制作一个动画,将图像视图从屏幕的开头移动到结尾,并且每次都随机化 x 位置。我该怎么做?
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator" >
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="359"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000"
android:repeatCount="infinite"
/>
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="100%"
android:repeatCount="infinite"
android:duration="3000"
></translate>
</set>
我不知道如何随机化 X 坐标,也不知道为什么即使我使用了 0% 和 100% 但它并没有真正从屏幕的开头开始,也没有在屏幕的结尾结束。
提前感谢您的帮助!
要使动画从父对象[p] 的最顶部(y 轴)部分开始并在默认位置结束,即如果它没有动画时的位置,请修改您的翻译定义如下:
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="-100%p"
android:toYDelta="0"
android:repeatCount="infinite"
android:duration="3000">
</translate>
如果您喜欢从底部开始的动画,请使用:android:fromYDelta="100%p"
关于你的第二个问题,你可以使用属性android:interpolator
来定义动画的节奏。
例如:
androd:interpolator="@android:anim/bounce_interpolator"
Here is a short video 演示每个插值器的效果。
希望对您有所帮助。
我想制作一个动画,将图像视图从屏幕的开头移动到结尾,并且每次都随机化 x 位置。我该怎么做?
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator" >
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="359"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000"
android:repeatCount="infinite"
/>
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:toYDelta="100%"
android:repeatCount="infinite"
android:duration="3000"
></translate>
</set>
我不知道如何随机化 X 坐标,也不知道为什么即使我使用了 0% 和 100% 但它并没有真正从屏幕的开头开始,也没有在屏幕的结尾结束。 提前感谢您的帮助!
要使动画从父对象[p] 的最顶部(y 轴)部分开始并在默认位置结束,即如果它没有动画时的位置,请修改您的翻译定义如下:
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="-100%p"
android:toYDelta="0"
android:repeatCount="infinite"
android:duration="3000">
</translate>
如果您喜欢从底部开始的动画,请使用:android:fromYDelta="100%p"
关于你的第二个问题,你可以使用属性android:interpolator
来定义动画的节奏。
例如:
androd:interpolator="@android:anim/bounce_interpolator"
Here is a short video 演示每个插值器的效果。
希望对您有所帮助。