我正在尝试实现一个动画蝴蝶,它应该通过单击按钮在屏幕上飞行。如何有效地实现它。如果我需要多个蝴蝶(可能是100+)是否会影响设备性能?。我怎么能在翅膀上实现飞行效果。
请提供示例代码。我尝试过缩放动画,但不是预期的。非常有帮助。
答案 0 :(得分:0)
通过在布局中显示简单的gif,您可以获得相当不错的性能。只需从你拥有的图像中创建一个gif(使用一些gif maker - 有很多其他选项,只需搜索它)。要在应用程序中显示gif,您可以使用自定义库,例如android-gif-drawable。实现类似于ImageView:
<pl.droidsonroids.gif.GifImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/your_butterfly_anim"
/>
这是简单动画的可能性。
编辑:
int distance = 100; //the distance to move in pixels
int duration = 500; //the duration of the animation in ms
double direction = Math.random() * 2 * Math.PI;
int translationX = Math.cos(direction) * distance;
int translationY = Math.sin(direction) * distance;
yourImageView.animate().translationX(translationX).translationY(translationY).setDuration(duration).start();
这应该会给你一些关于如何让它随机飞行的初步想法。