यह उदाहरण android recyclerview में onItemClickListner के सर्वश्रेष्ठ प्रतिस्थापन के बारे में दर्शाता है
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
उपरोक्त कोड में, हमने रीसाइक्लरव्यू लिया है।
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ें <पूर्व>पैकेज com.example.myapplication;import android.annotation.TargetApi;import android.os.Build;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget .DefaultItemAnimator;import android.support.v7.widget.DividerItemDecoration;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.RecyclerView;import android.support.v7.widget.Toolbar;import android. विजेट.टेक्स्टव्यू;आयात java.util.ArrayList;सार्वजनिक वर्ग MainActivity AppCompatActivity को बढ़ाता है { TextView टेक्स्ट; ऐरेलिस्ट <स्ट्रिंग> सूची =नई ऐरेलिस्ट <> (); निजी RecyclerView recyclerView; निजी कस्टम एडेप्टर mAdapter; निजी ऑनक्लिकइंटरफ़ेस ऑनक्लिकइंटरफ़ेस; @TargetApi(Build.VERSION_CODES.LOLLIPOP) @Override public void onCreate(Bundle saveInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); टूलबार टूलबार =(android.support.v7.widget.Toolbar) findViewById(R.id.appbarlayout_tool_bar); toolbar.setTitle ("यह टूलबार है।"); सेट सपोर्टएक्शनबार (टूलबार); ऑनक्लिकइंटरफेस =नया ऑनक्लिकइंटरफेस () {@ ओवरराइड सार्वजनिक शून्य सेटक्लिक (स्ट्रिंग एबीसी) {अगर (एबीसी! =शून्य) {सूची जोड़ें (एबीसी); mAdapter.notifyDataSetChanged (); } } }; recyclerView =(RecyclerView) findViewById (R.id.recycler_view); RecyclerView.LayoutManager mLayoutManager =नया LinearLayoutManager (getApplicationContext ()); recyclerView.setLayoutManager(mLayoutManager); recyclerView.setItemAnimator (नया DefaultItemAnimator ()); mAdapter =नया कस्टम एडेप्टर (यह, सूची, ऑनक्लिकइंटरफ़ेस); recyclerView.setAdapter (mAdapter); recyclerView.addItemDecoration (नया डिवाइडर इटैमडेकोरेशन (recyclerView.getContext (), डिवाइडर इटेमडेकोरेशन। वर्टिकल)); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); list.add("sairamm"); list.add ("कृष्णा"); सूची जोड़ें ("प्रसाद"); }}पूर्व>चरण 4 - निम्न कोड को src/customAdapter.java
में जोड़ेंपैकेज com.example.myapplication;import android.content.Context;import android.support.annotation.NonNull;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;आयात android.view.ViewGroup;import android.widget.TextView;import java.util.ArrayList;सार्वजनिक वर्ग कस्टम एडेप्टर RecyclerView.Adapter{ प्रसंग प्रसंग; ऐरेलिस्ट <स्ट्रिंग> सूची; ऑनक्लिकइंटरफेस ऑनक्लिकइंटरफेस; सार्वजनिक वर्ग MyViewHolder RecyclerView.ViewHolder को बढ़ाता है { public TextView शीर्षक; सार्वजनिक MyViewHolder (दृश्य देखें) {सुपर (देखें); शीर्षक =(टेक्स्ट व्यू) view.findViewById(R.id.title); } } सार्वजनिक कस्टम एडेप्टर (संदर्भ संदर्भ, ऐरेलिस्ट <स्ट्रिंग> सूची, ऑनक्लिकइंटरफेस ऑनक्लिकइंटरफेस) { यह। संदर्भ =संदर्भ; यह सूची =सूची; this.onClickInterface =onClickInterface; } @NonNull @Override public MyViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { देखें itemView =LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_row, viewGroup, false); नया MyViewHolder (आइटम व्यू) लौटाएं; } @Override public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, final int i) { myViewHolder.title.setText(list.get(i)); myViewHolder.title.setOnClickListener (नया व्यू। ऑनक्लिक लिस्टनर () {@ ओवरराइड पब्लिक वॉयड ऑनक्लिक (व्यू वी) {ऑनक्लिकइंटरफेस.सेटक्लिक ("ऑनआईटीमक्लिक");}}); } @ ओवरराइड पब्लिक इंट getItemCount () {रिटर्न लिस्ट। साइज (); }}पूर्व> चरण 5 - निम्नलिखित कोड को res/layout/list_row.xml में जोड़ें।
चरण 6 - निम्न कोड को src/ onClickInterface में जोड़ें।
पैकेज com.example.myapplication;सार्वजनिक इंटरफ़ेस onClickInterface { void setClick(String abc);}आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइल में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
अब टेक्स्टव्यू पर क्लिक करें, यह निम्नानुसार परिणाम दिखाएगा