如何在Kotlin Android中使用If和背景按钮?

时间:2018-08-31 22:06:15

标签: android kotlin

我想使用(If)与背景按钮进行检查,以从Kotlin android中的按钮内的图像命名 我确实使用过button1.setBackgroundResource(R.drawable.image1)但不能与If一起使用 我用

If (button1.background == R.drawable.image1){
button1.setBackgroundResource(R.drawable.image2)
}

所以我用了

If (button1.background == @drawable/image1){
button1.setBackgroundResource(R.drawable.image2)
}

但所有错误 什么是解决方案?

1 个答案:

答案 0 :(得分:2)

您要将button1背景与 drawable 文件夹中的另一资源进行比较。

这是一个解决方案:

if (button1.background.constantState == ContextCompat.getDrawable(this, R.drawable.image1).constantState) {
    button1.setBackgroundResource(R.drawable.image2)
}

如果要在片段中使用此代码

if (button1.background.constantState == ContextCompat.getDrawable(activity, R.drawable.image1).constantState) {
    button1.setBackgroundResource(R.drawable.image2)
}