数组适配器实现展示图片
时间: 2023-12-07 13:02:48 浏览: 30
要实现数组适配器展示图片,可以按照以下步骤进行:
1. 创建一个包含图片资源的数组,例如:int[] images = {R.drawable.image1, R.drawable.image2, R.drawable.image3};
2. 创建一个自定义的适配器类,继承自ArrayAdapter类。在该类中,重写getView()方法,实现图片的展示。代码示例:
```
public class ImageAdapter extends ArrayAdapter<Integer> {
private Context mContext;
private int mResource;
public ImageAdapter(Context context, int resource, Integer[] objects) {
super(context, resource, objects);
mContext = context;
mResource = resource;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(350, 350));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(getItem(position));
return imageView;
}
}
```
3. 在布局文件中添加一个GridView控件,并设置适配器为自定义的适配器类。代码示例:
```
<GridView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="3"
android:verticalSpacing="8dp"
android:horizontalSpacing="8dp"
android:padding="8dp"
android:clipToPadding="false"
android:scrollbarStyle="outsideOverlay"
android:scrollbars="vertical"
android:fadeScrollbars="true"
android:fastScrollEnabled="true"
android:fastScrollAlwaysVisible="false"
android:drawSelectorOnTop="false"
android:stretchMode="columnWidth"
android:gravity="center"
android:background="@android:color/white"
android:clipChildren="true" />
```
4. 在Activity中获取GridView控件,并设置适配器。代码示例:
```
GridView gridView = findViewById(R.id.gridView);
ImageAdapter adapter = new ImageAdapter(this, R.layout.item_image, images);
gridView.setAdapter(adapter);
```
其中,R.layout.item_image为每个GridView项的布局文件,可以自定义。
这样,就可以实现通过数组适配器展示图片了。