我在创建游戏的地方有一个自定义视图。当玩家获得一些积分时,我想添加一个动画,例如相对于自定义视图从任意x,y位置冒泡的“ +500”。
我正在考虑最坏的情况,我可以为每个屏幕尺寸使用不同的图像,并通过让线程更改其在onDraw中视图代码中的位置来动画化它们,反复调用invalidate。好像我正在重新发明轮子。
使用Android看起来像现有视图一部分的东西,如何更好地在自定义视图上设置动画?
答案 0 :(得分:2)
使用ObjectAnimator。您可以阅读有关here的信息。如果只想设置文本动画(例如+500),请使用TextView并在其上应用ValueAnimator。像这样:
ObjectAnimator anim = ObjectAnimator.ofFloat(textView, "translationY", 0,100f);
anim.setDuration(2000);
anim.start();
您可以获取自定义视图的y位置,然后从此处开始动画:
`ObjectAnimator anim = ObjectAnimator.ofFloat(textView, "translationY",y,y-100f);`
答案 1 :(得分:2)
如果有帮助,请找到以下链接
您可以使用本教程https://proandroiddev.com/how-to-create-a-bubble-selection-animation-on-android-627044da4854
使textView
进行动画处理
,您可以使用此库创建气泡背景动画。