当前位置: 首页 > 知识库问答 >
问题:

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

姚新霁
2023-03-14

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

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

共有2个答案

仉梓
2023-03-14

这是因为使用了AnimatorListenerAdapter,将其替换为withEndAction

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

我尝试了你发布的代码,它看起来工作得很好,除了当你试图动画的视图的父视图打开动画布局更改时。如果您在布局xml中启用了它,请关闭它并再试一次。

 类似资料:
  • 我是Netbeans和Java的新手,对jpanels上的jlabel有一个问题。我有一个jTabbedPane,里面有一个jPanel。我在JPanel上有一个jLabel。我想将jLabel的可见性设置为false,但似乎不起作用。当我运行程序时,标签仍然可见。我不明白为什么。

  • 是否可以(仅仅)使用Byte-Buddy更改某些方法的可见性?我有一个带有私有静态方法的用户类,我需要将一些调用委托给这些方法,但由于它们是私有的,所以当前失败了。因此,我想知道是否可以通过添加公共修饰符来转换上述方法来重新定义user类。 对于记录,在目标Java方法上调用setAccessible(true)方法作为not effect,因为Byte Buddy仍然失败,出现以下异常: 我发现

  • 我正在尝试使用LayoutTransition动画,但它们不起作用。 我设置 在我的activity布局中的父级LinearLayout中。然后,在选中或未选中另一个复选框时,对包含一些复选框的子LinearLayout执行setVisibility(View.Visible)或setVisibility(View.Gone)。可见性更改不是动画的。父级LinearLayout中有一个Scroll

  • 我想用crossfade动画实现颜色更改状态栏,如下所示。我能知道怎么做吗? 状态栏颜色更改动画: 谢谢! 编辑(2018年7月7日)-来吧,伙计们,这不是复制品 不管怎样,最后我找到了一个解决方案,使用ValueAnimator和Argb评估器。

  • 在重定向的情况下,Flash消息似乎会被破坏。我编写了简单的测试代码: 我调用不带参数的操作,它会添加一个flash并重定向。当它呈现页面时-flash不存在。 视图部分很好,因为如果我设置flash并在不重定向的情况下进行渲染,它会正确渲染。 为什么? 编辑:布局视图代码:

  • 我试图使用数据绑定实现一个简单的视图隐藏/显示。我有一个api调用,我必须在api调用进行时显示一个progressbar。一旦我得到响应,就必须放弃这个进度并显示数据。我尝试使用数据绑定动态地更改progressbar的可见性。但什么也没发生。只是第一次根据绑定变量设置progresbar可见性。它不是在更新绑定变量时动态更新的。 这里少了什么?为什么不管用?提前感谢…