Я использую более раннюю библиотеку ButterKnife.Вот как я использовал событие click для нескольких объектов.
@OnClick({ R.id.door1, R.id.door2, R.id.door3 })
public void pickDoor(DoorView door) {
if (door.hasPrizeBehind()) {
Toast.makeText(this, "You win!", LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Try again", LENGTH_SHORT).show();
}
}
Без ButterKnife;
override fun onClick(v: View?) {
when (v!!.id) {
R.id.tv -> {
Toast.makeText(this, "You are click textview", Toast.LENGTH_SHORT).show()
}
R.id.btn -> {
Toast.makeText(this, "You are click button.", Toast.LENGTH_SHORT).show()
}
else -> {
}
}
}
Нажмите на процесс, что я могу сделать.Я хочу сделать это с помощью переключателя или когда.Похоже, плохой код написания отдельных setOnClickListener.
binding.btnFive.setOnClickListener { MyLog.log("five") }
//or
btnFour.setOnClickListener { MyLog.log("four") }
Но теперь я использую привязку данных.Как мне сделать это с привязкой данных?
Что я искал;
when(binding){ //of course, this doesn't work. exemplary.
btnFirst->{}
btnSecond->{}
}
Так что я не хочу писать setOnClickListener{}
так последовательно.Как мне это сделать?