如果在一个循环完成之前再次启动,则动画 imageview 会损坏
Animating imageview broken if it's started again before one cycle finishes
我有一个 ImageView,我使用 OnClickListener 将其随动画旋转 180 度。如果它触发得非常快(在一个动画完成之前),动画就会出错并以奇怪的角度离开视图(例如相对于基本状态旋转 47 度)。
如何在当前动画完成之前阻止下一个动画或如何以其他方式处理它?
bankExpandArrow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (totalText.getVisibility() == View.GONE) {
totalText.setVisibility(View.VISIBLE);;
bankExpandArrow.animate().rotationBy(180f).start();
}
else {
totalText.setVisibility(View.GONE);
bankExpandArrow.animate().rotationBy(180f).start();
}
}
});
尝试使用 rotation
而不是 rotationBy
我有一个 ImageView,我使用 OnClickListener 将其随动画旋转 180 度。如果它触发得非常快(在一个动画完成之前),动画就会出错并以奇怪的角度离开视图(例如相对于基本状态旋转 47 度)。
如何在当前动画完成之前阻止下一个动画或如何以其他方式处理它?
bankExpandArrow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (totalText.getVisibility() == View.GONE) {
totalText.setVisibility(View.VISIBLE);;
bankExpandArrow.animate().rotationBy(180f).start();
}
else {
totalText.setVisibility(View.GONE);
bankExpandArrow.animate().rotationBy(180f).start();
}
}
});
尝试使用 rotation
而不是 rotationBy