我正在使用NineOldAndroids进行动画制作。 基本上我想要实现的是在隐藏它之前将一些动画应用于按钮。 所以,我将动画应用于我的按钮,然后调用setVisibility(View.GONE),但似乎它没有生效。该按钮仍在屏幕上并处理点击。 我应该在应用动画后以某种方式“重置”按钮状态吗?
final Button button = (Button) getView().findViewById(R.id.user_to_button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ObjectAnimator.ofFloat(AnimatorProxy.wrap(v), "alpha", 1, 0).setDuration(100).start();
ObjectAnimator.ofFloat(AnimatorProxy.wrap(v), "translationX", 0, -v.getWidth()).setDuration(100).start();
v.setVisibility(View.GONE);
}
});
如果删除动画,则按预期工作 - 隐藏按钮。
答案 0 :(得分:0)
动画完成后,在setVisibility之前使用此选项:
anim.reverse();
anim.removeAllListeners();
anim.end();
anim.cancel();
其中anim是你的ObjectAnimator