如何在Kotlin中使用按钮更改Imageview的位置

时间:2020-07-18 20:34:16

标签: android kotlin

因此,我对Kotlin来说是个新手,所以我试图创建一个简单的游戏,如果我按一个按钮,Imageview将向左或向右移动。下面我尝试使用ObjectAnimator,它可以工作。当我按下按钮时,它会向右移动,但在运行时只执行一次。现在,我已经编程了一个按钮,但我希​​望有4个方向按钮,可以在屏幕上移动Imageview。那么,在应用运行时,如何继续更改imageview的位置?

谢谢!

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    //val picture = findViewById<ImageView>(R.id.SpongeBob)
    val position_button = findViewById<Button>(R.id.position_button)


    position_button.setOnClickListener()
    {
        ObjectAnimator.ofFloat(SpongeBob, "TranslationX", 100f).apply {
            duration = 200
            start()

        }

    }
}

}

1 个答案:

答案 0 :(得分:0)

您可以使用picture.animate().setDuration(200).translationXBy(100f),请确保键入translationXBy而不是translationX!您还可以在"translationXBy"中使用ObjectAnimator或使用变量代替100f

您现在正在做的就是一直将图片移动到x: 100,但您真正想要的是将图片移动 100。

我为您制作了一个小型演示here

enter image description here