通常,我们使用R.String.btnClose来获取ID 有些人,我希望使用以下代码来识别ID,我知道代码是错误的。 我不知道java是否支持宏var,如果是这样,我该如何编写代码?谢谢!
String s =“btnClose”
R.string.s
答案 0 :(得分:1)
您可以尝试Resources.getIdentifier
。
的等价物
int id = R.string.btnClose;
将是
int id = getResources().getIdentifier("btnClose", "string", getPackageName());
注意:不鼓励使用此功能。按标识符检索资源比按名称检索资源要高效得多。
例如,您可以使用Map<String, Integer>
从名称中返回您的ID。
答案 1 :(得分:0)
活动内部使用此:
String s = getString(R.string.btnClose );
不在活动中:
public String getText(Context context, int resourceId)
{
Resources resources = context.getResources();
return resources.getString(resourceId);
}
祝福。