按名称获取资源

时间:2011-11-29 20:29:17

标签: android

HY!

我的/values/strings.xml:

<resources>
    <string name="error418">Bad Request</string>
    <string name="error404">Not Found</string>
    ......
</resources>

/values-de/strings.xml

中的相同内容

现在我想通过字符串“error418”获取错误消息。

我只找到了context.getString(int ...)。

如何通过代码获取错误消息?

1 个答案:

答案 0 :(得分:3)

如果您想动态获取资源ID,例如根据错误代码,您需要使用getIdentifier()

e.g。

String err_code = ...;
int strId = context.getResources().getIdentifier("error" + err_code, "string", "packagename");
if (strId != 0)
    Toast.maketext(context, context.getString(strId), Toast.LENGTH_LONG).show();
else 
    Toast.maketext(context, "Unknown error", Toast.LENGTH_LONG).show();