android开发之GridView UI篇

小熊猫猫 2014-02-13 04:31:35
GridView是android的一个网格视图,例如:九宫格,它跟ListView有共同的父类AbsListView。
区别:ListView只显示单列,而GridView可以显示多列。
GridView和ListView一样 都需要Adapter(适配器)来提供显示的数据;
具体逻辑如下:

示例如下:
public class GSListGdViewAssist {

private ArrayList<String> strlist;
private ArrayList<Integer> idlist;

public void grid(GridView gridv,final Activity main,String goodscategory,final Class cls){
strlist=new ArrayList<String>();
idlist=new ArrayList<Integer>();
GoodsDao gddao =new GoodsDao(main);
List<Goods> gdsl=gddao.getScrollData(goodscategory, 0, 10);
for(Goods good : gdsl){
strlist.add(good.getGoodsname());
idlist.add(good.getGoodsid());
}
//数据源meumList
ArrayList<HashMap<String, Object>> meumList = new ArrayList<HashMap<String, Object>>();
for(int i = 0;i < strlist.size();i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("ItemImage", R.drawable.four_conew3);
map.put("ItemText", strlist.get(i).toString());
meumList.add(map);
}

//适配器SimpleAdapter saItem
SimpleAdapter saItem = new SimpleAdapter(main,
meumList, //数据源
R.layout.item, //xml实现
new String[]{"ItemImage","ItemText"}, //对应map的Key
new int[]{R.id.ItemImage,R.id.ItemText}); //对应R的Id

//添加Item到网格中 通过适配器在GridView中显示数据 .
gridv.setAdapter(saItem);
//添加点击事件
gridv.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {

}
});
}


}
...全文
95 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
文明游戏 2014-02-13
  • 打赏
  • 举报
回复
不错,分享经验。接分~~

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧