java - ImageView在代码中设置ImageResource

标签 java android image android-layout image-processing

我有一个 imageView,我想显示您当前所在国家/地区的小图标。我可以获得国家/地区代码,但问题是我无法动态更改 imageView 资源。我的图片文件都是小写的

    String lowerCountryCode = countryCode.toLowerCase();
    String resource = "R.drawable." + lowerCountryCode;
    img.setImageResource(resource);
int id = getResources().getIdentifier(lowerCountryCode, "drawable", getPackageName());
setImageResource(id);

上面是我的代码。

现在,当然这不会起作用,因为设置图像资源需要一个 int,那么我该怎么做呢?提前致谢

最佳答案

我的意思是你知道你想在一个和另一个国家使用的文件(可绘制)的名称。

ImageView imgView=(ImageView)findViewById(R.id.imageView1);
int id = getResources().getIdentifier(lowerCountryCode.toLowerCase(), "drawable", getPackageName());
imgView.setImageDrawable(res.getDrawable(id));

关于java - ImageView在代码中设置ImageResource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15310405/

相关文章:

java - 突破java中的递归方法

android - Kotlin Unresolved reference

java - 从 iText 的 Barcode39 图像中获取字节

android - 如何将复选框绑定(bind)到图像

java - 使用 .clear() 或让 GC 处理它

java - 为什么枚举不是可迭代的?

java - 可以以某种方式简化此循环代码吗?

android - 如何绘制声波?

java - 自定义卡片 View 形状

安卓图像切换器