我遇到了这个烦人的问题,我有 2 个片段,并且我在片段getView()
组件上运行 3d 翻转动画。问题来了,翻转完成后,我尝试将另一个视图设置为不可见,但没有任何反应。似乎动画仍在视图中,如果我setAnimation(null)
或clearAnimation
视图,整个视图将重置为开始状态。
我还做了一些测试,只为视图运行 alpha 动画,之后我无法再更改视图的可见性。此类问题的任何解决方案或破解方法?
谢谢。
这是重现问题的小代码片段。
onCreateView
调用 Fragment 并单击按钮时,将运行以下代码:
AlphaAnimation fadeHalf = new AlphaAnimation(1, 0.5f);
fadeHalf.setFillAfter(true);
fadeHalf.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
getView().setVisibility(View.GONE);
});
getView().startAnimation(fadeHalf);
因此,当运行上面的代码时,整个片段视图被转换为 0.5f alpha,但setVisilibity(View.GONE)
什么也不做。