我使用下面给出的代码段来显示/隐藏RecyclerView内部的点击视图。问题是在第一个显示/隐藏周期后,视图显示片刻然后消失。这种情况一直持续到我重新开始活动为止。
public void changeVisibility(final View view, boolean makeVisible)
{
if (makeVisible)
{
view.setVisibility(View.VISIBLE);
view.setAlpha(0.0f);
view.animate().alpha(1.0f);
}
else
{
view.animate()
.alpha(0.0f)
.setListener(new AnimatorListenerAdapter()
{
@Override
public void onAnimationEnd(Animator animation)
{
super.onAnimationEnd(animation);
view.setVisibility(View.GONE);
}
});
}
}
答案 0 :(得分:1)
原因是因为您在第一轮显示/隐藏视图后设置了onAnimationEnd
。
如果您不再需要,请删除listener
。加上这个:
view.setListener(null);
到你的if (makeVisible)
区块应该有效! ;)