GridView 的基本使用
16lz
2021-01-23
写出来的效果如下:
- 布局文件:
<GridView android:id="@+id/gv" android:layout_width="match_parent" android:layout_height="match_parent" android:numColumns="3" android:scrollbars="none" />
android:scrollbars="none" : 不显示滚动条android:numColumns="3" : 显示有三列
- 写adapter类(代码如下):
public class GridViewAdapter extends BaseAdapter { private Context context; private List
- 在Activity中的代码如下:
public class MainActivity extends AppCompatActivity { @BindView(R.id.gv) GridView gv; private List> list; private GridViewAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); //拿到数据 getAndCombinData(); adapter = new GridViewAdapter(this, list); gv.setAdapter(adapter); } @OnItemClick(R.id.gv) public void onItemClick(int poaition) { Toast.makeText(this, names[poaition], Toast.LENGTH_SHORT).show(); } /** * ============拿到并组合数据组合数据 */ private void getAndCombinData() { list = new ArrayList<>(); Map map = null; for (int i = 0; i < names.length; i++) { map = new HashMap<>(); map.put("name", names[i]); map.put("img", imgs[i]); list.add(map); } } private int[] imgs = new int[]{ R.drawable.home, R.drawable.work, R.drawable.data, R.drawable.msg, R.drawable.ddgl, R.drawable.me, R.drawable.sjtj, R.drawable.xxcx, R.drawable.qx, R.drawable.qxgl, R.drawable.home, R.drawable.work, R.drawable.data, R.drawable.msg, R.drawable.ddgl, R.drawable.me, R.drawable.sjtj, R.drawable.xxcx, R.drawable.qx, R.drawable.qxgl }; private String[] names = new String[]{ "主页", "任务", "数据", "消息", "设置", "我的", "数据统计", "信息管理", "权限", "权限管理", "主页", "任务", "数据", "消息", "设置", "我的", "数据统计", "信息管理", "权限", "权限管理" };}
更多相关文章
- Android 实现与Eclipse数据交互
- Android之数据存入SD卡中
- Android get+post传值获取php服务端的json数据
- android 常用数据库字段描述
- android raw 文件下写入数据库
- Android中的使用ListView控件显示List集合中的数据,并对Item响应
- Android Sqlite 数据库多线程操作