当膨胀片段时,我需要使用从活动传入的唯一字符串键设置"earth" --> R.drawable.icon_earth
"mars" --> R.drawable.icon_mars
"pluto" --> R.drawable.icon_pluto
drawable,但这不是R.drawable的形式。基本上我需要映射输入字符串,如:
function M = identity(n)
M = zeros(n);
for i=1:n
M(i,i) = 1;
end
end
我正在努力寻找在Android中甚至是Java中正确执行此操作的正确方法。也许我只是没有以正确的方式搜索SO或Google,但我现在已经坚持了一个多小时了。
感谢。
答案 0 :(得分:1)
如何像这样Map<String, Object>
-
Map<String, Object> map = new HasMap<String, Object>();
map.put("earth", R.drawable.icon_earth);
之后,您可以使用Map<String, Object>
map
- map.get("earth")
获取价值
答案 1 :(得分:1)
如果您将字符串用作图标标识符,则可以使用getIdentifier类的Resources方法
String resourceName = "icon_" + "earth";
int resource = getResources().getIdentifier(resourceName, "drawable", "com.package");