Android中ImageView动态加载Image

发布于 2024-10-04 07:59:47 字数 392 浏览 4 评论 0原文

我的可绘制文件夹中有 100 多张图像(国旗)的数据库。

现在我想在 ImageView 中显示您当前所在国家/地区的国旗。

我使用 String Country_variable = address.getCountryCode(); 获取国家/地区,

并使用 flag.setImageDrawable(getResources().getDrawable(R.drawable.country_variable)); 设置图像code>

众所周知,R.drawable.country_variable 不起作用,因为编译器无法在drawable 文件夹中找到名为country_variable 的图像。

最好的方法是什么?

I have this database of 100+ images (of country flags) in my drawable folder.

Now I want to display the flag of the country you're currently in, in an ImageView.

I get the country with String country_variable = address.getCountryCode();

And I set the image with flag.setImageDrawable(getResources().getDrawable(R.drawable.country_variable));

As you all know R.drawable.country_variable wont't work because the compiler can't find a image named country_variable in the drawable folder.

What is the best way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

罪#恶を代价 2024-10-11 07:59:47

您应该能够使用 getResources().getIdentifier() 通过资源名称获取 id。像这样的东西:

flag.setImageDrawable(getResources().getDrawable(getResources().getIdentifier("drawable/" + country_variable, "drawable", getPackageName()));

You should be able to use getResources().getIdentifier() to get the id by the resource name. Something like:

flag.setImageDrawable(getResources().getDrawable(getResources().getIdentifier("drawable/" + country_variable, "drawable", getPackageName()));
和影子一齐双人舞 2024-10-11 07:59:47

试试这个:

flag.setImageDrawable(getResources().getDrawable(getResources().getIdentifier(country_variable, "drawable", getPackageName()));

Try this:

flag.setImageDrawable(getResources().getDrawable(getResources().getIdentifier(country_variable, "drawable", getPackageName()));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文