【发布时间】:2013-05-15 19:49:37
【问题描述】:
嗨,我正在制作动画(使用 TranslateAnimation())我有 4 个按钮(左移、右移、上按钮、下按钮)和一个我现在想要的图像视图,当动画结束时如何保存新位置,并从新位置开始运行另一个动画
【问题讨论】:
标签: android animation imageview translation
嗨,我正在制作动画(使用 TranslateAnimation())我有 4 个按钮(左移、右移、上按钮、下按钮)和一个我现在想要的图像视图,当动画结束时如何保存新位置,并从新位置开始运行另一个动画
【问题讨论】:
标签: android animation imageview translation
在动画上调用方法setFillAfter(true)
【讨论】:
private OnClickListener click_Dx = new OnClickListener() { @Override public void onClick(View v) { animation = new TranslateAnimation(0,50,0,0); animation.setDuration(2000); animation.setRepeatCount(0); IMG3.setImageDrawable(getResources().getDrawable(R.drawable.dx)); IMG3.setAnimation(animation); animation.setFillEnabled(true); animation.setFillAfter(true); } }; 对于每个clickListener,图像向一个方向移动,它们都一样,所以我只写一个
ObjectAnimator,它工作得更好,TranslateAnimation只是改变屏幕上显示的位置,但布局位置保持不变,这就是为什么第二次翻译是效果不好,从 3.0 版开始,引入了 ObjectAnimator 并且效果更好。