2

Anko Commons - Intent Usage

How do I exactly use Intent from Anko Commons inside RecyclerView Adapter/else to new Activity?

Rayhan Hanaputra
  • 106
  • 2
  • 16
  • Take a look here to set an ItemClickListener to your RecyclerView : https://stackoverflow.com/questions/29424944/recyclerview-itemclicklistener-in-kotlin – Bubu Aug 30 '18 at 12:28

1 Answers1

1

To pass adapter postion:

class ViewHolder(view: View) : RecyclerView.ViewHolder(view){
    init{
        view.setOnClickListener {
            view.context.startActivity<MyActivity>("key" to getAdapterPosition())
        }
    }
}

To retrieve in your activity

val position = intent!!.extras.getInt("key")

UPD: Exact same for any other data:

class ViewHolder(view: View) : RecyclerView.ViewHolder(view){
    fun bindItem(items: Item) {
        itemView.name.text = items.name
        Glide.with(itemView.context).load(items.image).into(itemView.image)

        view.setOnClickListener {
                view.context.startActivity<MyActivity>("image" to items.image, "name" to items.name)
            }
    }
}
Anton A.
  • 1,718
  • 15
  • 37