public class MainActivity extends AppCompatActivity {
RecyclerView rv;
private List<String> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rv= (RecyclerView) findViewById(R.id.rv);
list = new ArrayList<>();
for (int i=0;i<10;i++){
list.add("条目"+i);
}
initData();
}
private void initData() {
LinearLayoutManager ll=new LinearLayoutManager(this);
rv.setLayoutManager(ll);
// 创建适配器
MyAdapter adapter=new MyAdapter();
rv.setAdapter(adapter);
adapter.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
Toast.makeText(MainActivity.this,"===",Toast.LENGTH_SHORT).show();
}
});
adapter.notifyDataSetChanged();
}
class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
// private MyViewHolder holder;
OnItemClickListener listener;
public void setOnItemClickListener(OnItemClickListener listener) {
this.listener = listener;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view=View.inflate(MainActivity.this,R.layout.item,null);
// holder = new MyViewHolder(view);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.onItemClick(view,(int)view.getTag() );
}
});
return new MyViewHolder(view);
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
((MyViewHolder)holder).tv.setText(list.get(position));
holder.itemView.setTag(position);
}
@Override
public int getItemCount() {
return list==null?0:list.size();
}
class MyViewHolder extends RecyclerView.ViewHolder{
private final TextView tv;
private final ImageView iv;
public MyViewHolder(View itemView) {
super(itemView);
tv= (TextView) itemView.findViewById(R.id.tv);
iv = (ImageView) itemView.findViewById(R.id.iv);
}
}
}
public interface OnItemClickListener {
public void onItemClick(View view, int position);
}
}
RecyclerView rv;
private List<String> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rv= (RecyclerView) findViewById(R.id.rv);
list = new ArrayList<>();
for (int i=0;i<10;i++){
list.add("条目"+i);
}
initData();
}
private void initData() {
LinearLayoutManager ll=new LinearLayoutManager(this);
rv.setLayoutManager(ll);
// 创建适配器
MyAdapter adapter=new MyAdapter();
rv.setAdapter(adapter);
adapter.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
Toast.makeText(MainActivity.this,"===",Toast.LENGTH_SHORT).show();
}
});
adapter.notifyDataSetChanged();
}
class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
// private MyViewHolder holder;
OnItemClickListener listener;
public void setOnItemClickListener(OnItemClickListener listener) {
this.listener = listener;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view=View.inflate(MainActivity.this,R.layout.item,null);
// holder = new MyViewHolder(view);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.onItemClick(view,(int)view.getTag() );
}
});
return new MyViewHolder(view);
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
((MyViewHolder)holder).tv.setText(list.get(position));
holder.itemView.setTag(position);
}
@Override
public int getItemCount() {
return list==null?0:list.size();
}
class MyViewHolder extends RecyclerView.ViewHolder{
private final TextView tv;
private final ImageView iv;
public MyViewHolder(View itemView) {
super(itemView);
tv= (TextView) itemView.findViewById(R.id.tv);
iv = (ImageView) itemView.findViewById(R.id.iv);
}
}
}
public interface OnItemClickListener {
public void onItemClick(View view, int position);
}
}