4

我正在尝试在我的应用程序中制作动画视图,并使用 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在第一段代码中设置视图可见性后,如何清除侦听器?

4

1 回答 1

8

我找到了解决方案,它是在制作视图时将 null 作为侦听器传递VISIBLE

ViewPropertyAnimator.animate(view).alpha(1).setListener(null);
于 2015-02-27T17:48:24.340 回答