【发布时间】:2016-02-17 07:51:47
【问题描述】:
我有一个包含 600 个项目的数组。我列出了 RecyclerView 中的所有数组项并很好地滚动。但是当我尝试访问 onClick 侦听器时,它没有得到。我尝试实现 View.OnClickListener 并覆盖 onClick。但它不起作用。
当用户单击视图中的行项目之一时,我想在列表项中 Toast 项目
适配器代码是
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
public static class ViewHolder extends RecyclerView.ViewHolder
implements View.OnClickListener {
private String mItem;
private TextView mTextView;
public ViewHolder(View view) {
super(view);
view.setOnClickListener(this);
mTextView = (TextView) view.findViewById(R.id.item_title);
}
public void setItem(String item) {
mItem = item;
mTextView.setText(item);
}
@Override
public void onClick(View view) {
Log.d("TAG", "onClick " + getPosition() + " " + mItem);
}
}
private String[] mDataset;
public MyAdapter(String[] dataset) {
mDataset = dataset;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item, parent, false);
ViewHolder vh = new ViewHolder(v);
return vh;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
holder.setItem(mDataset[position]);
}
@Override
public int getItemCount() {
return mDataset.length;
}
}
谁能帮帮我 在此先感谢:)
【问题讨论】:
-
我在这里使用相同的方法stackoverflow.com/a/28304164/3077569
标签: android android-layout android-activity android-recyclerview