好的,所以在我的项目中,我希望能够根据包含字符串 ID 的变量更改 string.xml 中用于特定事物的字符串。理想情况下,我可以做这样的事情thing.setText(R.id.variablename)如果 variablename 等于“question1”,它最终等于thing.setText(R.id.question1)但这显然不起作用,因为它会查找 ID 为 variablename 的字符串。有什么办法可以让我在这里做我想做的事吗?对此的替代方法是在我的应用程序中为每个问题创建一个单独的实例,考虑到除了使用的字符串不同之外,每个页面都是完全相同的,这将是愚蠢的。
1 回答
潇潇雨雨
TA贡献1833条经验 获得超4个赞
你可以用这个
private String getStringResourceByName(String aString) {
String packageName = getPackageName();
int resId = getResources().getIdentifier(aString, "string", packageName);
return getString(resId);
}
thing.setText(getStringResourceByName("question1"));
或者只是一个班轮
getResources().getString(getResources().getIdentifier("question1", "string", getPackageName()))
添加回答
举报
0/150
提交
取消