我想在setVisibility上制作动画视图,但它仅适用于第一次
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想在setVisibility上制作动画视图,但它仅适用于第一次相关的知识,希望对你有一定的参考价值。
我已经添加
android:animateLayoutChanges="true"
我的回收站视图和可见性在onClick
处理如下,但它只在第一次点击时有效。
rlOtherOptions.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
if (rvModeCheck.getVisibility() == View.GONE) {
rvModeCheck.setVisibility(View.VISIBLE);
} else {
rvModeCheck.setVisibility(View.GONE);
}
}
});
我该怎么办?
答案
android:animateLayoutChanges="true"
请将上面的内容添加到XML的根布局中...
另一答案
请尝试通过代码进行动画制作
rlOtherOptions.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
if (rvModeCheck.getVisibility() == View.GONE) {
rvModeCheck.setVisibility(View.VISIBLE);
rvModeCheck.setAlpha(0);
rvModeCheck.animate().alpha(1).setDuration(300).setListener(null);
} else {
rvModeCheck.animate().alpha(0).setDuration(300).setListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
}
@Override
public void onAnimationEnd(Animator animation) {
rvModeCheck.setVisibility(View.GONE);
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
}
}
});
另一答案
尝试将此代码放在onCreateView方法中(如果尚未安装)。
可能需要在您的问题中添加更多信息/代码以获得更好的帮助。
以上是关于我想在setVisibility上制作动画视图,但它仅适用于第一次的主要内容,如果未能解决你的问题,请参考以下文章