一个常见的使用案例是在移动应用中展示一个图片或者商品列表。GridView 是一个可滚动的列表视图,可以用来展示大量的项目,并且可以根据需要进行滚动。下面是一个简单的案例讲解:
- 首先,在布局文件中添加一个 GridView 控件:
- 在 Java 代码中获取 GridView 控件的引用,并为其设置适配器:
GridView gridView = findViewById(R.id.grid_view); gridView.setAdapter(new MyAdapter(this));
- 创建一个自定义的适配器类,用于为 GridView 提供数据:
public class MyAdapter extends BaseAdapter { private Context mContext; public MyAdapter(Context context) { mContext = context; } @Override public int getCount() { return 9; // 假设有 9 个项目 } @Override public Object getItem(int position) { return null; // 不需要实现 } @Override public long getItemId(int position) { return 0; // 不需要实现 } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { // 如果没有可重用的视图,则创建一个新的 ImageView 对象 imageView = new ImageView(mContext); imageView.setLayoutParams(new GridView.LayoutParams(200, 200)); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); } else { imageView = (ImageView) convertView; } // 设置每个 ImageView 的图片资源 imageView.setImageResource(R.drawable.image); return imageView; } }
在这个案例中,我们首先在布局文件中添加了一个 GridView 控件,并设置了一些属性,如列数、垂直和水平间距等。然后,在 Java 代码中获取 GridView 的引用,并为其设置一个自定义的适配器。适配器类中实现了 getCount、getItem、getItemId 和 getView 方法,其中 getView 方法用于为每个项目创建或重用一个 ImageView,并设置图片资源。
这样,当应用运行时,GridView 就会根据适配器提供的数据来展示图片列表。用户可以通过滑动来查看更多的图片,并且可以点击某个图片来进行相应的操作。