使用ViewPropertyAnimator淡出动画无法正常工作

问题描述 投票:0回答:1

此代码来自官方docs

rvBla.addOnScrollListener(object : RecyclerView.OnScrollListener() {
            override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
                super.onScrolled(recyclerView, dx, dy)
                if (dy > 0) {
                    tvBla.apply {
                        if (visibility != View.GONE) {
                            animate()
                                    .alpha(0f)
                                    .setDuration(250L)
                                    .setListener(object : AnimatorListenerAdapter() {
                                        override fun onAnimationEnd(animation: Animator?) {
                                            visibility = View.GONE
                                        }
                                    })
                        }
                    }
                } else {
                    tvBla.apply {
                        if (visibility != View.VISIBLE) {
                            alpha = 0f
                            visibility = View.VISIBLE

                            animate()
                                    .alpha(1f)
                                    .setDuration(250L)
                                    .setListener(null)
                        }
                    }
                }
            }
        })

随着RecyclerView rvBla向下滚动,tvBla淡出。如果rvBla向上滚动,则tvBla会向后淡入。问题是,尽管tvBla250L持续时间正确淡入,但它会立即淡出,好像其持续时间为0L

怎么了?

android animation kotlin
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.