将值从数组转换为findViewById ids

时间:2013-09-01 11:15:03

标签: java android

public String getTexts(int i, int j, String[][] setTexts){
    String id = new String();
    return id = setTexts[i][j];
}
    for (int i = 0; i < weights.length; i++) {
        for (int j = 0; j < weights[i].length; j++) {
            final EditText setTexts[i][j] = (EditText)findViewById(R.id.getTexts(i,j,setTexts[][]));
        }
    }

我使用getter从我在创建的代码之前创建的名为“setTexts”的2d数组中获取值,其中包含我想要更改的EditTexts的id。然后,当我尝试使用该方法获取ID时,我得到“意外令牌”和“无法解析方法”getTexts“。我也尝试过投射,但它没有用。

1 个答案:

答案 0 :(得分:2)

错误 - 您需要传递setTexts而不是setTexts[][],因为该方法需要2d String数组。 setTexts[][]是无效的参数

final EditText setTexts[i][j] = (EditText)findViewById(R.id.getTexts(i,j,setTexts));

旁注:

在方法getTexts中,如果您只想使用setTexts[i][j],则该方法只能接受String。 3个论点似乎多余。

public String getTexts(String s){
    String id = s;
    return id;
}

您可以在将参数传递给方法

时计算相同的内容
final EditText setTexts[i][j] = (EditText)findViewById(R.id.getTexts(setTexts[i][j]));