1

我有一个情感图标列表(超过 100 个图标)。
我想在一个视图中显示人们可以点击它并为他点击的内容敬酒。
情感图标 现在,我有一些令人困惑的地方:
1)我应该使用哪些视图来包含所有这些图标(GridView 或 ListView)?
2)如何动态添加它们或以编程方式添加它们?如果我一一声明,我认为是不行的。但还有其他想法吗?
所有图像图标都在可绘制文件夹中。谢谢。

4

2 回答 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();

看到这个答案会帮助你

使用 ImageAdapter 以动态/编程方式使用 ImageView 填充 GridView

于 2012-07-27T04:09:50.470 回答