如何从String名称获取单选按钮的int Id

时间:2014-02-01 14:52:03

标签: android android-resources

我正在制作一个Android应用程序作为我的大学项目的一部分,我想知道如果我将其资源名称作为字符串,我如何获得单选按钮ID(int值),我得到如下:

String resName = getResources()
.getResourceEntryName(optionGroup.getCheckedRadioButtonId());

因为当用户返回此活动时,必须使用check()方法显示他之前选择的单选按钮,如下所示:

optionGroup.check(rBtnId);

我确实考虑过存储单选按钮ID本身,但是我需要在应用程序的其他地方使用字符串值,并且仅在此处需要int Id。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:0)

您可以使用Reflection:

public static int getId(String name) {
    try {
        Field idField = R.id.getDeclaredField(variableName);
        return idField.getInt(idField);
    } catch (Exception e) {
        e.printStackTrace();
        return -1;
    } 
}

答案 1 :(得分:0)

您可以使用:

getIdentifier