首页 >Java >java教程 >如何使用 getIdentifier() 按名称检索 Android 资源?

如何使用 getIdentifier() 按名称检索 Android 资源?

Barbara Streisand
Barbara Streisand原创
2024-12-21 16:56:14738浏览

How to Retrieve Android Resources by Name Using `getIdentifier()`?

按名称检索资源

使用名称而不是整数 ID 访问字符串或可绘制对象等资源,可以为应用程序开发提供更大的灵活性。为了实现这一点,使用了 Resources 类中的 getIdentifier() 方法。

getIdentifier() 的语法是:

int getIdentifier(String name, String defType, String defPackage)

其中:

  • name 是资源的名称,不带资源类型前缀(例如, "myString")
  • defType 是资源的类型,例如 "drawable" 或 "string"
  • defPackage 是定义资源的包的名称

例如获取名为的图片的Drawable资源ID "my_image.png":

int drawableResourceId = this.getResources().getIdentifier("my_image", "drawable", this.getPackageName());

类似地,要获取名为“welcome_text”的值的字符串资源 ID:

int stringResourceId = this.getResources().getIdentifier("welcome_text", "string", this.getPackageName());

请注意,以这种方式获取资源 ID 可以是比直接使用整数 ID 慢。因此,当资源名称是动态的或需要编程访问时,应该明智地使用它。

以上是如何使用 getIdentifier() 按名称检索 Android 资源?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn