一、创建empty activity项目:
二、打开activity_main.xml布局文件:
添加RecyclerView控件
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerview"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout_editor_absoluteX="1dp"
tools:layout_editor_absoluteY="1dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
三、新建子布局文件
四、修改子布局文件,添加item:
<ImageView
android:id="@+id/imageView"
android:layout_width="32dp"
android:layout_height="32dp"
tools:srcCompat="@tools:sample/avatars" />
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="32dp"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="64dp"
android:text="TextView" />
五、添加adapter:
六、MainActivity.java:
定义:
private RecyclerView recyclerView;
private ProvinceAdapter provinceAdapter;
private List<Province> provinceList = new ArrayList<>();
初始化:
recyclerView = findViewById(R.id.recyclerview);
String provinceName[] = {"北京","上海","天津","重庆",
"内蒙古","广西","宁夏","新疆","西藏",
"香港","澳门",
"河北","河南","山东","山西","辽宁",
"吉林","黑龙江","江苏","浙江","安徽",
"福建","江西","湖北","湖南","广东",
"海南","四川","贵州","云南","陕西",
"甘肃","青海","台湾" };
String provincialCapital[] = {
"北京","上海","天津","重庆",
"呼和浩特","南宁","银川","乌鲁木齐","拉萨",
"香港","澳门",
"石家庄","郑州","济南","太原","沈阳",
"长春","哈尔滨","南京","杭州","合肥",
"福州","南昌","武汉","长沙","广州",
"海口","成都","贵阳","昆明","西安",
"兰州","西宁","台北"
};
for (int i = 0; i < 34; i++){
Province province = new Province();
province.name = provinceName[i];
province.provincialCapital = provincialCapital[i];
provinceList.add(province);
}
引用:
provinceAdapter = new ProvinceAdapter();
recyclerView.setAdapter(provinceAdapter);
GridLayoutManager gridLayoutManager = new GridLayoutManager(MainActivity.this,2);
recyclerView.setLayoutManager(gridLayoutManager);
DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(this,DividerItemDecoration.HORIZONTAL);
recyclerView.addItemDecoration(dividerItemDecoration);
七、运行效果: