我想创建一个用于Android应用活动的textView,该活动在linearLayout中具有自定义视图。
我想在自定义视图上设置TextView的动画-但是TextView在布局中不存在,因为我希望它是动态创建的。可以说,这是一个球员得分的动画,其中“ +500”向上移动。
代码看起来像这样
LinearLayout ll = (LinearLayout) activity.findViewById(R.id.screen_game);
TextView textView = new TextView(getContext());
ll.addView(textView);
textView.setText("+500 points!");
textView.setVisibility(VISIBLE);
ObjectAnimator anim = ObjectAnimator.ofFloat(textView, "translationY", 0,100f);
anim.setDuration(2000);
anim.start();
很显然,我并不是真的想将TextView添加到视图中,因为那样的话,它只是被添加到了LinearLayout底部的底部。我应该在这里做什么?
[ Update1 ] 通过将视图添加到RelativeLayout中,我取得了良好的进展,然后将其作为子级添加到根FrameLayout中。这非常适合动态添加仅针对动画创建的视图(然后消失)。但是现在我需要更精细地控制动画从/开始到的位置,并且AbsoluteLayout已弃用,因此我避免了这一点。由于我试图将文本放置在相对于全屏FrameLayout的确切位置,因此我需要将AbsoluteLayout替换为其他可以在屏幕上精确显示X,Y位置的东西。我想我已经在这里回答了我的问题,但这些要点目前仍对我不利。
答案 0 :(得分:-1)
添加动画侦听器。 动画结束时删除TextView。
-fPIC