我有110张图片,全部标记为1,2,3等。我希望能够设置它以便我可以生成一个随机数,然后在屏幕上显示该图像。显示部分很好,但我不确定阵列。
到目前为止,我所见过的只是需要手动设置的数组 - 在XML中键入每个名称。对于10或15张图片,这还不错。对于110或者数千(未来,希望如此),这是非常低效的。有没有办法根据标题而不是资源ID显示图像?理想情况下,我希望能够为我的图像“ENG_1”和“SPA_1”标题,以显示不同语言的不同图像,因此基于字符串而不是int来获取它是很好的,以便进行搜索(如果这是一个词)和易于访问。
那么,我该怎么做呢?
答案 0 :(得分:3)
是的,有一种方法Resources.getIdentifier(String name, String defType, String defPackage)
。您可以通过以下方式使用:
Resources resources = getResources();
int id = resources.getIdentifier("ENG_1", "drawable", getPackageName());
Drawable drawable = resources.getDrawable(id);