【问题标题】:How to clear Animation Listeners set by NineOldAndroids?如何清除 NineOldAndroids 设置的 Animation Listeners?
【发布时间】:2015-04-29 20:51:33
【问题描述】:

我正在尝试在我的应用中制作动画视图,并且正在使用 NineOldAndroid 制作动画。
所需的效果是淡出视图,然后将其可见性设置为消失,这样它就不会在不可见时被点击。这是我的做法。

ViewPropertyAnimator.animate(view).alpha(0).setListener(new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animation) {

            }

            @Override
            public void onAnimationEnd(Animator animation) {
                view.setVisibility(View.GONE);
            }

            @Override
            public void onAnimationCancel(Animator animation) {

            }

            @Override
            public void onAnimationRepeat(Animator animation) {

            }
        });

这里的问题是上面的监听器坚持使用view,当我再次尝试淡入它时,监听器被再次调用,导致视图在出现时为GONE

ViewPropertyAnimator.animate(enterGallery).alpha(1);

在第一段代码中视图可见性设置为GONE后,如何清除监听器?

【问题讨论】:

    标签: android android-animation nineoldandroids


    【解决方案1】:

    我找到了解决方案,在创建视图VISIBLE 时将 null 作为侦听器传递。

    ViewPropertyAnimator.animate(view).alpha(1).setListener(null);
    

    【讨论】:

      猜你喜欢
      • 2010-11-27
      • 1970-01-01
      • 1970-01-01
      • 2020-09-13
      • 2013-12-29
      • 1970-01-01
      • 1970-01-01
      • 2021-04-09
      相关资源
      最近更新 更多