0

我的目标很简单。我希望能够从 4 个编辑文本字段中获取用户输入,id 为 et1-4,并将它们放入一个名为aSummary1[] = {et1, et2, et3, et4};. 这四个字段是不同的数据类型,两个是单词,一个是数字,一个是密码。这将全部显示在ListView. 这部分我可以做。我无法弄清楚的部分是如果我想在 中添加一个新行ListView,我想创建一个新的字符串数组,假设aSummary2[]具有不同的值,但参数相同:{word, word, number, password};,然后aSummary3[]等等等等.

怎么做呢?或者,如果有更好的方法,我将如何分配变量和字符串以无限制地列出条目。例如,列表条目 x 带有分配给 x 的变量 wy 和 z,但是带有变量 a 带有 bc 和 e,带有 q 带有 rs 和 t。

4

2 回答 2

2

我认为您需要一个不断增长的数组.....最好使用Collections它的 more flexible,并且与数组不同,您不要在声明时对其进行初始化。

首先考虑做一个Pojo

public class Summary {

    private String str1;
    private String str2;
    private int number;
    private String password;



    public Summary(String str1, String str2, int number, String password) {

        this.str1 = str1;
        this.str2 = str2;
        this.number = number;
        this.password = password;
    }

    public String getStr1() {
        return str1;
    }

    public String getStr2() {
        return str2;
    }

    public int getNumber() {
        return number;
    }

    public String getPassword() {
        return password;
    }


}



 }

现在考虑另一个类,从那里初始化这个类对象,然后存储在一个 ArrayList.

public class Test{

public static ArrayList<Summary> arList = new ArrayList<Summary>();
private Summary sObj;

   public void fillMe(String p1, String p2, int p3, String p4){


           arList.add(new sObj(p1, p2, p3, p4));
    }
}
于 2012-09-02T13:04:58.567 回答
1

正如评论中提到的,更好的解决方案是创建一个包含所有必需字段的类,例如:

public class Summary {
    private String field1;
    private String field2;
    private String field3;
    private String field4;
}

然后将此类的对象存储在 ArrayList 中:

ArrayList<Summary> summaries = new ArrayList<Summary>();

当您需要创建另一个这种类型的对象时,只需调用:

Summary summary = new Summary();
// initialize fields
summaries.add(summary);

希望这可以帮助。

于 2012-09-02T12:35:44.130 回答