Android textview 在使用动画更改其可见性后闪烁

Android textview blinking after changing its visibility using animation

我对约束布局有一些看法。我使用动画来显示和隐藏视图。当视图消失时,它会闪烁一秒钟然后变为可见然后消失。

     view.animate()
    .alpha(0.0f)
    .setDuration(300)
    .setListener(new AnimatorListenerAdapter() {
        @Override
        public void onAnimationEnd(Animator animation) {
            super.onAnimationEnd(animation);
            view.setVisibility(View.GONE);
        }
    });

发生这种情况是因为使用了AnimatorListenerAdapter,将其替换为withEndAction:

        view.animate()
            .alpha(0.0f)
            .setDuration(300)
            .withEndAction(new Runnable() {
                @Override
                public void run() {
                    view.setVisibility(View.GONE);
                }
            });

我尝试了您发布的代码,它似乎工作正常,除非为您尝试设置动画的视图的父级打开了 animateLayoutChanges。如果您在布局中启用了它 xml,请将其关闭并重试。