recyclerview android onclick code example

Example 1: recyclerview button onclicklistener

TextView textView;//declare global with in adapter class

public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

      private ViewHolder(View itemView) {
            super(itemView);
            itemView.setOnClickListener(this);
            textView = (TextView)view.findViewById(android.R.id.text1);

      }

      @Override
      public void onClick(View view) {
            Toast.makeText(view.getContext(), "position = " + getLayoutPosition(), Toast.LENGTH_SHORT).show();

         //go through each item if you have few items within recycler view
        if(getLayoutPosition()==0){
           //Do whatever you want here

        }else if(getLayoutPosition()==1){ 
           //Do whatever you want here         

        }else if(getLayoutPosition()==2){

        }else if(getLayoutPosition()==3){

        }else if(getLayoutPosition()==4){

        }else if(getLayoutPosition()==5){

        }

        //or you can use For loop if you have long list of items. Use its length or size of the list as 
        for(int i = 0; i<exampleList.size(); i++){

        }


      }
  }

Example 2: recyclerview onclicklistener kotlin

class MainActivity : AppCompatActivity(), CellClickListener {    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)        val recyclerView: RecyclerView = findViewById(R.id.recycler_view)        recyclerView.layoutManager = LinearLayoutManager(this)        recyclerView.adapter = Adapter(this, fetchList(), this)    }    private fun fetchList(): ArrayList<Model> {        val list = arrayListOf<Model>()        for (i in 0..9) {            val model = Model(R.drawable.ic_collections_black_24dp, "Title : $i", "Subtitle : $i")            list.add(model)        }        return list    }    override fun onCellClickListener() {        Toast.makeText(this,"Cell clicked", Toast.LENGTH_SHORT).show()    }}

Tags:

Misc Example