Лучший способ сделать это - реализовать перенаправление в своей Активности, а Нет в адаптере , и вы можете добиться этого, выполнив следующие действия:
Шаг 1: Добавьте параметр для вашего адаптера с именем onMenuItemClicked:
class YourAdapter(var onMenuItemClicked: (Int) -> Boolean) : RecyclerView.Adapter<Holder>()
Шаг 2: Измените свой код на этот
holder.view.imageViewMore.setOnClickListener {
val popupMenu = PopupMenu(holder.view.context, it, Gravity.START)
popupMenu.setOnMenuItemClickListener { item ->
onMenuItemClicked(item.itemId)
}
popupMenu.inflate(R.menu.menu_prijem_posiljke)
popupMenu.show()
}
Шаг 3: В своей деятельности инициализируйте адаптер следующим образом:
val adapter = YourAdapter {
when(itemId){
R.id.storniraj ->{
Toast.makeText(holder.view.context,"this is toast message",Toast.LENGTH_SHORT).show()
true
}
R.id.detalji->{
startActivity(this@MainActivity , SecondActivity::class.java)
true
}
else -> false
}
}