MyAdapter.java
package com.kyousuke.recycleviewtest;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.ArrayList;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
private ArrayList<String> list;// 数据数组
static class ViewHolder extends RecyclerView.ViewHolder{
TextView tv; //RecyclerView的最大子View的 组成控件
public ViewHolder(View view){ //View 为RecyclerView的最大子View(以下View均此意思)
super(view);
this.tv=(TextView)view.findViewById(R.id.tv);
}
}
public MyAdapter(ArrayList<String> list){
this.list=list;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.num_layout,parent,false);
ViewHolder holder=new ViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
String str=list.get(position);
holder.tv.setText(list.get(position));
}
@Override
public int getItemCount() {
return list.size();
}
}
MainActivity.java
package com.kyousuke.recycleviewtest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
private RecyclerView rv;
private MyAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rv=findViewById(R.id.rv);
ArrayList<String> list=new ArrayList<String>();
for(int i=0;i<100;i++){
list.add(String.valueOf(i));
}//生成数组
adapter=new MyAdapter(list);
rv.setLayoutManager(new LinearLayoutManager(this)); //重要,容易遗忘
rv.setAdapter(adapter);
}
}
扫描二维码关注公众号,回复:
2345202 查看本文章