效果图
MainActivity布局
<android.support.v7.widget.RecyclerView
android:id="@+id/mine_recyclerview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
enter code here
MainAvtivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
assignViews();
}
private void assignViews() {
ArrayList<TestBean> testBean = new ArrayList<>();
TestBean testBean0 = new TestBean();
testBean0.setName("0");
TestBean testBean1 = new TestBean();
testBean1.setName("2");
TestBean testBean2 = new TestBean();
testBean2.setName("3");
TestBean testBean3 = new TestBean();
testBean3.setName("4");
TestBean testBean4 = new TestBean();
testBean4.setName("5");
TestBean testBean5 = new TestBean();
testBean5.setName("6");
TestBean testBean6 = new TestBean();
testBean6.setName("7");
testBean.add(testBean0);
testBean.add(testBean1);
testBean.add(testBean2);
testBean.add(testBean3);
testBean.add(testBean4);
testBean.add(testBean5);
testBean.add(testBean6);
mineRecyclerview = (RecyclerView) findViewById(R.id.mine_recyclerview);
mineRecyclerview.setLayoutManager(new LinearLayoutManager(this));//使用默认,默认是垂直
MyVerticalAdapter myVerticalAdapter = new MyVerticalAdapter(R.layout.mine_rey_test, testBean);
mineRecyclerview.setAdapter(myVerticalAdapter);
}
enter code here
MyVerticalAdapter中传入的布局
<?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/circle_blue"
android:padding="5dp"
android:layout_height="wrap_content">
<TextView
android:background="@drawable/circle_orange"
android:text="12321321"
android:gravity="center"
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="100dp">
</TextView>
</LinearLayout>
enter code here
android:background=”@drawable/circle_blue”
android:background=”@drawable/circle_orange”
是2个shape文件
使用的第三方的adapter
MyVerticalAdapter
public class MyVerticalAdapter extends BaseQuickAdapter<TestBean,BaseViewHolder> {
public MyVerticalAdapter(int layoutResId, @Nullable List<TestBean> data) {
super(layoutResId, data);
}
@Override
protected void convert(BaseViewHolder helper, TestBean item) {
TextView tv = (TextView)helper.getView(R.id.tv);
tv.setText(item.getName());
}
}
enter code here
TestBean实体类
package com.example.co.myrecylerview;
import com.chad.library.adapter.base.entity.MultiItemEntity;
/**
* Created by jieding on 2018/8/10 11:32
*/
public class TestBean {
public static final int ITEMONE=1;
public static final int ITEMTWO=2;
private String name="李四";
private int price=10;
private int num=10;
private String parameter="白色";
private int itemType;
public void setItemType(int itemType) {
this.itemType = itemType;
}
public String getParameter() {
return parameter;
}
public void setParameter(String parameter) {
this.parameter = parameter;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
}