我有一个imageView,我想显示您当前所在国家的小图标。我可以获取国家/地区代码,但是问题是我无法动态更改imageView资源。我的图像文件全部为小写(例如:国家/地区代码=美国,图像文件=美国)
我的代码(countryCode是当前大写字母的countryCode):
String lowerCountryCode = countryCode.toLowerCase();
String resource = "R.drawable." + lowerCountryCode;
img.setImageResource(resource);
现在,这当然不起作用,因为setImageResource需要一个int,那么我该怎么做呢?
提前致谢
最佳答案
将您必须的国家名称映射到要在int
方法中使用的setImageResource
的一种简单方法是:
int id = getResources().getIdentifier(lowerCountryCode, "drawable", getPackageName());
setImageResource(id);
但是,您实际上应该尝试对要支持的国家使用不同的文件夹资源。
关于android - 代码中的Android ImageView setImageResource,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60174879/