如何在R.array。*参考中转换变量?

时间:2019-04-03 15:06:54

标签: java android android-arrayadapter

所以我试图做一个if / then语句,结果是R.array.measurements或R.array.currency。 “度量”和“货币”都引用strings.xml文件中的两个数组。它需要一个整数值,因此我尝试将其解析为Integer,但无法正常工作。

我想做的是,如果isMeasurement == false,然后将ListView显示为度量列表,如果isMeasurement == true,则它将显示货币列表。据我所知,其他所有东西都起作用。感谢您的帮助:)

这是我尝试过的:

private String unitType;
    Boolean isMeasurement = false;
            if(isMeasurement){
                unitType = "R.array.measurements"; 
            } else {
                unitType = "R.array.currency";
            }
            ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, Integer.parseInt(unitType), android.R.layout.simple_spinner_item);

这是我的原始代码:

private String unitType;
    Boolean isMeasurement = false;
            if(isMeasurement){
                unitType = "R.array.measurements";
            } else {
                unitType = "R.array.currency";
            }
            ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.measurements, android.R.layout.simple_spinner_item);

1 个答案:

答案 0 :(得分:1)

您尝试过getResourses().getString(R.array.measurements);吗?这将为您提供R.array.measurements的实际值。现在,您只是分配一个字符串文字。

或者,如果您需要整数值,那么R.array.measurements(不带引号)将为您提供整数ID。