1. 先聲明控件 RecyclerView rcv = findViewById(R.id.rv);
2.做一些簡單的配置 給他動畫
rcv.setLayoutManager(new LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false)); rcv.setItemAnimator(new DefaultItemAnimator());
3.給他匹配適配器 把解析到的數據給適配器
Myadaper myadaper = new Myadaper(list); rcv.setAdapter(myadaper);
4.下面是適配器的操作
//寫Reyclerview的適配器 要繼承RecyclerView.Adapter重寫三個方法 onCreateViewHolder onBindViewHolder getItemCount public class Myadaper extends RecyclerView.Adapter { private List<String> list; public Myadaper(List<String> list) { this.list = list; } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //找到佈局 View view = View.inflate(parent.getContext(), R.layout.item, null); Myviewholder myviewholder = new Myviewholder(view); return myviewholder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { final Myviewholder myviewholder= (Myviewholder) holder; myviewholder.textone.setText(list.get(position)); } @Override public int getItemCount() { return list.size(); } //內部類要繼承ViewHolder class Myviewholder extends RecyclerView.ViewHolder{ private final TextView textone; public Myviewholder(View itemView) { super(itemView); textone = itemView.findViewById(R.id.item_tv); } } }
5.下面是佈局 很簡單
<android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/rv" ></android.support.v7.widget.RecyclerView>
6.下面是依賴
compile 'com.android.support:recyclerview-v7:26.1.0'
7.最後做一點補充 如果想讓他變成多列的 加這一行代碼即可 把之前的
LinearLayoutManager改成GridLayoutManager就好了 下面是代碼
rcv.setLayoutManager(new GridLayoutManager(this,3));