Android 动态获取 Resource ID

Posted teletian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 动态获取 Resource ID相关的知识,希望对你有一定的参考价值。

android 开发中,当需要获取资源文件 ID 的时候,会按照下面的方式获取:
R.drawable.ic_close
R.color.black

但是如果有一组相似的图片,名称也很相似。
比如电量图标,ic_battery_0,ic_battery_1,ic_battery_2,…,ic_battery_100。
那么如果要根据电量值显示对应的图标的话,不管是 if else 还是 switch case,都需要写很多代码。

如果用动态 Resource ID 的话,就会方便多了,下面介绍下做法

String resName = "ic_battery_" + batteryValue;
int resID = getResources().getIdentifier(resName, "drawable",   
        getContext().getPackageName());

以上是关于Android 动态获取 Resource ID的主要内容,如果未能解决你的问题,请参考以下文章

Android中怎么指导ImageButton使用的是哪个resource id?

uiautomatorviewer获取控件元素增强版

Android - 通过 ID 从动态 EditTexts 获取数据

如何从 Android 中的 plist 中获取值?

如何让 findViewById 动态获取 XML 上的 id 属性(Android)?

Android:资源 id 及资源 id 的动态获取