getIdentifier()
是 Android 中的一个方法,用于获取资源的 ID。在处理动态资源时,这个方法非常有用,因为它允许你在运行时根据资源名称或其他属性查找资源 ID。
以下是如何在 Android 中使用 getIdentifier()
方法处理动态资源的示例:
res/values/strings.xml
文件中定义一个字符串资源:<resources>
<string name="my_string">Hello, World!</string>
</resources>
getIdentifier()
方法根据资源名称获取资源 ID。例如,你可以在 Activity
或 Fragment
中这样做:public int getStringResourceId(String resourceName) {
return getResources().getIdentifier(resourceName, "string", getPackageName());
}
这个方法接受三个参数:资源名称、类型和包名。在这个例子中,我们查找的类型是 "string"
,包名是当前应用的包名。
getString()
方法加载字符串资源:int stringId = getStringResourceId("my_string");
String myString = getResources().getString(stringId);
这样,你就可以在运行时根据资源名称动态加载资源了。这在处理不同配置(如屏幕密度、语言等)下的资源时非常有用,因为你可以确保加载正确的资源版本。