是否可以在strings.xml中显示我的字符串的键而不是值,在UI中直接检查哪个键是很酷的。
例如
<string name="jobs_key">Jobs</string>
我想在界面jobs_key
而非Jobs
答案 0 :(得分:0)
使用Resources.getResourcesName(int)
,
返回给定资源标识符的全名
here您可以找到文档。您也可以使用反射:
private ArrayList<String> getKeysName(Context context, String className) {
Class c;
ArrayList<String> fieldsName = new ArrayList<String>();
try {
c = Class.forName(context.getPackageName() + ".R$" + className);
Field[] fields = c.getDeclaredFields();
for (Field f : fields) {
Log.e("LOG_TAG", " " + f.getName());
fieldsName.add(f.getName());
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return fieldsName;
}
并将其称为getKeysName(context, "string");
,以获取在string.xml中声明的所有键。