class MainActivity : AppCompatActivity() {
private var isImage1Visible = true //默认显示第一张
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val imageView = findViewById<ImageView>(R.id.imageView)
val button = findViewById<Button>(R.id.button)
button.setOnClickListener {
//通过监听按钮,当点击第一次按钮时,切换为第二张图片
if (isImage1Visible) {
imageView.setImageResource(R.drawable.image2)
} else {
imageView.setImageResource(R.drawable.image1)
}
//切换图片后修改变量逻辑值,用于给下次按钮切换
isImage1Visible = !isImage1Visible
}
}
}
以上代码为两张图片之间的切换,如果有多张图片,则需要稍微改动
以下代码为改动后的多张图片切换:
class MainActivity : AppCompatActivity() {
//首先需要手动录入你的目录中添加进去的图片,存入一个列表(简单粗暴的方式)
private val imageList = listOf(R.drawable.image1, R.drawable.image2, R.drawable.image3) private var currentIndex = 0 //设置一个变量,值为0表示第一张图片开始
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val imageView = findViewById<ImageView>(R.id.imageView)
val button = findViewById<Button>(R.id.button)
button.setOnClickListener {
//使用模运算(%
)将其限制在imageList
列表的索引范围内
currentIndex = (currentIndex + 1) % imageList.size
//根据currentIndex
获取对应的图片资源ID,进行图片显示设置
imageView.setImageResource(imageList[currentIndex])
}
}
}