使用代码设置Android GridView子项边框
时间: 2024-05-16 13:16:56 浏览: 125
要为Android GridView设置子项边框,可以使用自定义适配器并在getView()方法中设置子项视图的边框。以下是一个示例:
```
public class MyAdapter extends BaseAdapter {
private Context mContext;
private List<String> mItems;
public MyAdapter(Context context, List<String> items) {
mContext = context;
mItems = items;
}
@Override
public int getCount() {
return mItems.size();
}
@Override
public Object getItem(int position) {
return mItems.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView textView;
if (convertView == null) {
textView = new TextView(mContext);
textView.setLayoutParams(new GridView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
textView.setPadding(10, 10, 10, 10);
} else {
textView = (TextView) convertView;
}
textView.setText(mItems.get(position));
textView.setBackgroundResource(R.drawable.grid_item_border);
return textView;
}
}
```
在这个示例中,我们创建了一个名为MyAdapter的自定义适配器,并在getView()方法中创建了一个TextView作为子项视图。然后,我们设置了TextView的文本和内边距,并使用setBackgroundResource()方法将R.drawable.grid_item_border作为背景设置。这个背景资源应该是一个XML文件定义了一个边框,例如:
```
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="1dp" android:color="@android:color/black"/>
<padding android:left="5dp" android:right="5dp" android:top="5dp" android:bottom="5dp"/>
</shape>
```
这个XML文件定义了一个矩形形状,其边框宽度为1dp,颜色为黑色,并具有5dp的内边距。现在,我们可以将MyAdapter传递给GridView,以显示带有边框的子项。
阅读全文