效果图
主布局
numColumns 是控制展示几列
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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=".RecycleActivity">
<GridView
android:id="@+id/gridView"
android:gravity="center_horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="6"
/>
</RelativeLayout>
class
public class RecycleActivity extends AppCompatActivity {
List<Bean> list=new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_recycle);
//给50个测试数据
for (int i=1;i<50;i++){
list.add(new Bean(i));
}
GridView gridView = findViewById(R.id.gridView);
gridView.setAdapter(new MyAdapter(list));
}
public class MyAdapter extends BaseAdapter{
public MyAdapter( List<Bean> list1) {
list=list1;
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder3 viewHolder3;
if (convertView == null) {
LayoutInflater inflater = LayoutInflater.from(getApplication());
convertView = inflater.inflate(R.layout.item1, parent, false);
viewHolder3 = new ViewHolder3();
viewHolder3.id = (TextView) convertView.findViewById(R.id.id1);
convertView.setTag(viewHolder3);
} else {
viewHolder3 = (ViewHolder3) convertView.getTag();
}
viewHolder3.id.setText(list.get(position).getA()+"");
return convertView;
}
}
public class ViewHolder3 {
TextView id;
}
}
item1布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:orientation="horizontal"
android:id="@+id/ll"
android:layout_height="wrap_content">
<TextView
android:layout_marginStart="50dp"
android:textColor="@color/black"
android:id="@+id/id1"
android:text="aa"
android:layout_width="50dp"
android:gravity="center"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp" />
</LinearLayout>
Bean 实体类
public class Bean {
private int a;
public Bean(int i) {
a=i;
}
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}