私はRecyclerViewの項目をクリックします。このアイテムの詳細が表示されます。どうやってやるの?私はRetrofitライブラリを使用しました。このRecyclerView用のアダプタを作成しました。私はそれを声に出した。RecyclerViewで "onItemClickListener"を書くにはどうしたらいいですか?
活動:
List<TargetFile> targetfiles=response.body().getTargetfileslist();
Log.d(TAG,"Number of targetfileslist: "+targetfiles.size());
recyclerView.setAdapter(new TargetFileAdapter(targetfiles,R.layout.list_item_targetfile,getApplicationContext())); //RecyclerView
は、アダプタ:
public class TargetFileAdapter extends RecyclerView.Adapter<TargetFileAdapter.TargetFileViewHolder> {
private List<TargetFile> targetfiles;
private int rowLayout;
private Context context;
public TargetFileAdapter(List<TargetFile> targetfiles, int rowLayout, Context context) {
this.targetfiles = targetfiles;
this.rowLayout = rowLayout;
this.context = context;
}
public static class TargetFileViewHolder extends RecyclerView.ViewHolder{
LinearLayout targetFilesLayout;
TextView fileno,partyname,mobile,address;
public TargetFileViewHolder(View v){
super(v);
targetFilesLayout=(LinearLayout)v.findViewById(R.id.targetfile_layout);
fileno=(TextView)v.findViewById(R.id.fileno);
partyname=(TextView)v.findViewById(R.id.partyname);
address=(TextView)v.findViewById(R.id.adrs);
}
}
@Override
public TargetFileAdapter.TargetFileViewHolder onCreateViewHolder(ViewGroup parent, int viewType){
View view= LayoutInflater.from(parent.getContext()).inflate(rowLayout,parent,false);
return new TargetFileViewHolder(view);
}
@Override
public void onBindViewHolder(TargetFileViewHolder holder,final int position){
holder.fileno.setText(targetfiles.get(position).getFileno());
holder.partyname.setText(targetfiles.get(position).getPartyname());
holder.address.setText(targetfiles.get(position).getAddress());
}
@Override
public int getItemCount() {
return targetfiles.size();
}
}
役立つことを願っています'TargetFileViewHolder'が' OnClickListener'を実装するようにします'TargetFileViewHolder'コンストラクタで' setOnClickListener'を呼び出す – pskink
'RecyclerView'で' OnItemClickListener'を作成することはできますが、 'ListView'で手に入れることができれば、既にそれが組み込まれています。 –