我有一个情感图标列表(超过 100 个图标)。
我想在一个视图中显示人们可以点击它并为他点击的内容敬酒。
现在,我有一些令人困惑的地方:
1)我应该使用哪些视图来包含所有这些图标(GridView 或 ListView)?
2)如何动态添加它们或以编程方式添加它们?如果我一一声明,我认为是不行的。但还有其他想法吗?
所有图像图标都在可绘制文件夹中。谢谢。
问问题
2311 次
2 回答
3
GridView
在这种情况下使用 a 会更好PopupWindow
。获取一个 HashMap 并将笑脸的名称存储为字符串,并将其图像存储为资源 ID。
例如:-
HashMap<String, Integer> map = new HashMap<String, Integer>();
map.put("smile", R.drawable.smile);
....
现在,遍历 HashMap 的所有值(图像)并从 HashMap 值(图像)填充您的 GridView。
而且,在 Adapter 类中,您可以使用map.get(key);
ImageView 显示图像并设置资源。
更新:
我刚刚创建了一个小演示,您可以从中查看here
。
于 2012-07-27T04:07:50.580 回答
1
您告诉您需要的视图,网格视图将是更好的选择,您可以在其中添加动态值
private ArrayList<Photo> mPhotos;
private BaseAdapter mAdapter;
private GridView mGridView;
onCreate:
/* other things here */
mAdapter = new MyAdapter(mPhotos);
mGridView.setAdapter(mAdapter);
// 将新图像添加到列表中
mPhotos.add(photo);
mAdapter.notifyDataSetChanged();
看到这个答案会帮助你
于 2012-07-27T04:09:50.470 回答