一:GridView 概述
1:主题:使用GridView以表格形式显示多张图片
2:课程目标:学会使用GridView制作二维布局界面(行、列分布)
3:GridView用来干嘛:用于在界面上按行、列分布的方式来显示多个组件;
应用举例:手机系统桌面、手机360安全卫士功能列表、聚划算搜索全部内容列表
4:相似列表组件间比较:
GridView 二维列表显示(行列式)
ListView 一维行可下拉表显示(单调行表)
5:GridView的实现:
数据源-->适配器-->视图界面
二:GridView使用
gridView实现过程:
1.准备数据源
dataList=new ArrayList<Map<String,Object>>();
2.新建适配器(SimpleAdapter)
adapter=new SimpleAdapter(this,getData(),自定义布局,new String[]{"image","text"},new int[]{R.id.image,R.id.text});
(getData方法内容见笔记附录1)
3.gridView加载适配器
gridView.setAdapter(adapter);
4.gridView配置时间监听器(OnItemClickListener)
插入接口OnItemClickListener
gridView.setOnItemClickListener(this);
(onItemClick见笔记附录2)
笔记附录:
1.getData方法内部
private List<Map<String,Object>> getData(){
for(int i=0;i<icon.length;i++){
Map<String,Object>map=new HashMap<String,Object>();
map.put("image",icon[i]);
map.put("text",iconName[i]);
dataList.add(map);
}
return dataList;
}
2.public void onItemClick(...){
Toast.makeText(this,"我是"+iconName[position],Toast.LENGTH_SHORT).show();
}
三:设置属性,监听事件
GridView的三个常用属性
android:numColumns="3" //每行显示多少列 自己也有一个属性auto_fit自动适应
android:horizontalSpacing="10dp"//列间距
android:verticalSpacing="10dp" //行间距