今天写一下RecyclerView的ListView列表,。
首先我们需要导包:
//recyclerview列表 implementation 'com.android.support:recyclerview-v7:26.1.0'
然后我们需要两个布局:一个activity的布局,adapter布局,。
activity的布局:很简单,就一个recyclerview
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.v7.widget.RecyclerView android:padding="20dp" android:id="@+id/recyclerview1" android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v7.widget.RecyclerView> </LinearLayout>
adapter的布局:一个TextView
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:background="@drawable/recycler_background" android:layout_height="wrap_content"> <TextView android:id="@+id/name" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:padding="60dp" android:text="recyclerview1" android:textColor="#000000" /> </LinearLayout>
我们先写adapter的实现:
public class RecyclerView1Adapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{ private Context mContext; public RecyclerView1Adapter(Context mContext){//构造器 this.mContext = mContext; } class ItemHolder extends RecyclerView.ViewHolder{//正文 TextView name; public ItemHolder(View view){ super(view); name =view.findViewById(R.id.name); } } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //加载布局 View view = LayoutInflater.from(mContext).inflate(R.layout.adapter_recyclerview1,parent,false); ItemHolder itemHolder = new ItemHolder(view); return itemHolder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { ItemHolder itemHolder = (ItemHolder)holder; itemHolder.name.setText("111111"); } @Override public int getItemCount() { return 50;//条数 } }
最后我们写activity的实现:
public class RecyclerView1Activity extends AppCompatActivity { private RecyclerView recyclerView; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_recyclerview1); recyclerView = findViewById(R.id.recyclerview1); //设置分割线 // DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(this,DividerItemDecoration.VERTICAL); // dividerItemDecoration.setDrawable(ContextCompat.getDrawable(this,R.drawable.recycler_divider)); // recyclerView.addItemDecoration(dividerItemDecoration); //设置间距 recyclerView.addItemDecoration(new RecyclerView.ItemDecoration() { @Override public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { super.getItemOffsets(outRect, view, parent, state); outRect.bottom=100; } }); //1-创建管理器LinearLayoutManager LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); //2-设置对齐方式 linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); //3-将管理器设置到recyclerView recyclerView.setLayoutManager(linearLayoutManager); //4-创建适配器 RecyclerView1Adapter recyclerView1Adapter = new RecyclerView1Adapter(this); recyclerView.setAdapter(recyclerView1Adapter); } }
activity的实现注释的很明白了,就不多了,。感兴趣的伙伴可以下载来看看。
源码地址下载:https://download.csdn.net/download/weixin_42267745/10448485