GridView using
时间: 2023-09-07 15:14:43 浏览: 79
In Android, GridView is a view group that displays items in a two-dimensional grid. It's commonly used to show images or data in a grid format.
To use GridView, you need to follow these steps:
1. Add GridView to your layout file:
```
<GridView
android:id="@+id/grid_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="2"
android:horizontalSpacing="10dp"
android:verticalSpacing="10dp"
android:padding="10dp"
/>
```
2. Create a custom layout for each item in the grid:
```
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/image_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
/>
```
3. Create an adapter to populate the grid with data:
```
class ImageAdapter(private val context: Context, private val images: List<Int>) : BaseAdapter() {
override fun getCount(): Int {
return images.size
}
override fun getItem(position: Int): Any {
return images[position]
}
override fun getItemId(position: Int): Long {
return position.toLong()
}
override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
val imageView: ImageView
if (convertView == null) {
imageView = ImageView(context)
imageView.layoutParams = ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
)
imageView.scaleType = ImageView.ScaleType.CENTER_CROP
imageView.setPadding(8, 8, 8, 8)
} else {
imageView = convertView as ImageView
}
imageView.setImageResource(images[position])
return imageView
}
}
```
4. Set the adapter on the GridView:
```
val gridView: GridView = findViewById(R.id.grid_view)
val images = listOf(R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4)
val adapter = ImageAdapter(this, images)
gridView.adapter = adapter
```
This will create a grid with 2 columns, horizontal and vertical spacing of 10dp, and padding of 10dp. The adapter will populate the grid with the images provided in the list. You can customize the layout and adapter according to your needs.
阅读全文