理解从右到左的平移X()和位移

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

我有一个带有防尘罐和盖子的动画视图,我想让它从右向左移动,以防设备方向为 (RTL)。但是,在这两种情况下都是从左到右。如果有人可以帮助我找到我的错误。 (db = 0f)

override fun onAnimationStart(animation: Animator) {
                    var displacement = 0f
                    displacement = if (isLayoutDirectionRightToLeft) {
                        dp + 40
                    } else {
                        -dp * 40
                    }
                    dustin!!.translationX = displacement
                    dustin_cover!!.translationX = displacement
                    dustin_cover!!.animate().translationX(0f).rotation(-120f).setDuration(350)
                        .setInterpolator(
                            DecelerateInterpolator()
                        ).start()
                    dustin!!.animate().translationX(0f).setDuration(350).setInterpolator(
                        DecelerateInterpolator()
                    ).setListener(object : Animator.AnimatorListener {
                        override fun onAnimationStart(animation: Animator) {
                            dustin!!.visibility = View.VISIBLE
                            dustin_cover!!.visibility = View.VISIBLE
                        }

                        override fun onAnimationEnd(animation: Animator) {}
                        override fun onAnimationCancel(animation: Animator) {}
                        override fun onAnimationRepeat(animation: Animator) {}
                    }).start()
                }

................................

android kotlin android-layout android-animation
© www.soinside.com 2019 - 2024. All rights reserved.