我正在尝试使用ObjectAnimator向下移动ImageView。 setDuration()方法似乎不会影响动画的持续时间。我不能在XML中设置这个动画,因为我想动态地播放它。
ObjectAnimator an= ObjectAnimator.ofFloat(img, View.TRANSLATION_Y, 0, 100);
an.setDuration(5000);
an.start();
在这里对主题进行排序,但是说我想在彼此之后玩多个ObjectAnimation,有没有办法做到这一点?我看过Animator集,但我不确定它是否会像Object Animator一样移动实际对象,而不是像TranslateAnimation那样出现。
提前致谢!
答案 0 :(得分:7)
也许您正在测试三星设备?在这种情况下,在开发人员选项下,默认情况下会将选项动画人员持续时间刻度设置为关闭。如果切换到正常值,则可以看到动画。
希望得到这个帮助。
答案 1 :(得分:0)
LayoutInflater inflater =(LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View popupView = inflater.inflate(R.layout.loading_popup, null,false);
popup = new PopupWindow(popupView, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT, true);
popup.setContentView(popupView);
popup.setOutsideTouchable(true);
ImageView loadingPlane=(ImageView)popupView.findViewById(R.id.loading_plane);
RotateAnimation anim = new RotateAnimation(0.0f, 360.0f,Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
0.5f);
// Step 2: Set the Animation properties
anim.setInterpolator(new LinearInterpolator());
//anim.setRepeatCount(Animation.INFINITE);
anim.setRepeatCount(-1);
anim.setDuration(1500);
loadingPlane.startAnimation(anim);
findViewById(R.id.flyinstyle).post(new Runnable() {
public void run() {
popup.showAtLocation(findViewById(R.id.flyinstyle), Gravity.CENTER, 0, 0);
}
});