android-动画视图的OnclickListener
作者:互联网
在同一问题上发现了许多问题.
How to set OnClickListener on the ImageView after rotation animation
How to write the onclick listener for a view after animation?
我也有同样的问题,有什么建议吗?
解决方法:
您应该针对您的特定问题写一个新的,简洁的问题,而不仅仅是指出其他问题.链接到的两个问题尚不完全清楚.
我认为您的问题是,在将动画(例如,例如TranslateAnimation)应用于视图后,视图不再在其新位置响应触摸事件.这样做的原因是,根据布局参数,View尚未移至新位置,而是对其进行了转换.
解决方案非常简单:动画制作完成后,立即将View移至新位置.您可以设置myAnimation.setFillAfter()= false,并设置一个侦听器以在动画完成后将View物理地移动到目标位置:
myAmazingAnimation.setFillAfter() = false;
myAmazingAnimation.setAnimationListener(new Animation.AnimationListener(){
@Override
public void onAnimationEnd(Animation animation) {
// Now actually move the View using LayoutParams
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationStart(Animation animation) {
}
});
另一个变体是在应用动画之前在开始处物理移动View,然后应用动画使View从其以前的位置开始并在0,0处结束.
标签:android-animation,android 来源: https://codeday.me/bug/20191201/2083036.html