जो मैं मूल रूप से करने की कोशिश कर रहा हूं वह रीसाइक्लर व्यू में दिखाई देने वाली ऑब्जेक्ट्स को एक निश्चित टेक्स्ट व्यू आईडी पर क्लिक करने योग्य बनाता है क्योंकि मैं एक प्रोग्राम बना रहा हूं जो एक सूची में एक एल्बम कवर और इसके शीर्षक को दिखाता है। मुझे उन सभी बॉक्सों पर क्लिक करने में सक्षम होना चाहिए जो रीसाइक्लिंग व्यू बनाता है और टेक्स्टव्यू अन्य जानकारी (लेखक, प्रकाशित तिथि, हिट गाने इत्यादि) के साथ पॉप अप करते हैं, जब उसके बाद क्लिक किया जाता है और फिर बैक बटन (यदि संभव है) एल्बम सूची में वापस जाने के लिए। मैं इसे घंटों तक देख रहा हूं और यह समझ नहीं सकता कि ऑनक्लिक लिस्टनर को इसके लिए कैसे काम करना है। यदि आप जानते हैं कि उन्हें सुनने के लिए कोई सुझाव आईडी कैसे खुश है या नहीं। धन्यवाद!रीसाइक्लिंग व्यू में आप ऑनक्लिक लिस्टनर का उपयोग कैसे करते हैं?
package com.albumlist.albumlist;
import android.content.Context;
import android.content.Intent;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
private AlbumData[] itemsData;
public MyAdapter(AlbumData[] itemsData){
this.itemsData = itemsData;
}
public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
private TextView txtViewTitle;
private ImageView imgViewIcon;
public ViewHolder(View itemLayoutView) {
super(itemLayoutView);
itemLayoutView.setOnClickListener(this);
txtViewTitle = (TextView) itemLayoutView.findViewById(R.id.album_title);
imgViewIcon = (ImageView) itemLayoutView.findViewById(R.id.album_icon);
}
@Override
public void onClick(View v) {
}
}
@Override
public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,int viewType) {
View itemLayoutView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.data_layout, null);
ViewHolder viewHolder = new ViewHolder(itemLayoutView);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder viewHolder, int position) {
viewHolder.txtViewTitle.setText(itemsData[position].getTitle());
viewHolder.imgViewIcon.setImageResource(itemsData[position].getImageUrl());
}
@Override
public int getItemCount() {
return itemsData.length;
}
}
क्लिक श्रोता सेट का एक विस्तार है भर में एक
Fragment
में श्रोताओं को लागू करता है का एक टुकड़ा है। श्रोता इंटरफ़ेस को परिभाषित करें और इसे पहले 'एडाप्टर' में और फिर 'ViewHolder' पर' onCreateViewHolder' में पास करें। हैंडलिंग क्लिक वास्तव में वैसे ही किया जाता है जैसे 'ListView' में। 'RecyclerView' से पहले भी आपको' ListView' के 'OnItemClickListener' कॉलबैक का उपयोग नहीं करना था, यही कारण है कि' RecyclerView' में अब और नहीं है। –