Вы можете создать функцию расширения для решения этой проблемы
ViewExtentions.kt
fun View.setOnClickListenerWithSound(action: () -> Unit) {
val actionWithSound = ActionWithSound(context, action)
setOnClickListener {
actionWithSound.notifyAction()
}
}
private class ActionWithSound(context: Context,private val action: () -> Unit) {
private var mediaPlayer: MediaPlayer = MediaPlayer.create(context,R.raw.click )
fun notifyAction() {
mediaPlayer.start()
action.invoke()
}
}
и использовать ее как ниже:
someBtn.setOnClickListenerWithSound {
// do what you want
}