Android:向arrayList添加多个项目并将其显示为一个条目

时间:2015-05-26 17:36:37

标签: java android arraylist

我试图将两个项目添加到arrayList进行显示。 例如:

    Cursor res =  db.rawQuery( "select * from "+ TABLE_STUDENTS, null );
    res.moveToFirst();
    while(res.isAfterLast() == false)
    {
        array_list.add(res.getString(res.getColumnIndex(ST_SURNAME)));
        array_list.add(res.getString(res.getColumnIndex(ST_FIRST_NAME)));
        res.moveToNext();
    }

我想将信息集视为: 姓氏,first_name 例如能,简,简 显示时是列表视图。但它目前显示如下: (第1项)Doe (第2项)简

这就是我在List类中的内容:

    ArrayList array_list = mydb.getAllStudents();
    //Creating an Array Adapter to manipulate the contacts data into a ListView
    ArrayAdapter arrayAdapter = new ArrayAdapter(this, R.layout.list_layout, array_list);
    //Adding the contacts to the list view.
    student = (ListView) findViewById(R.id.listView1);
    student.setAdapter(arrayAdapter);

如何才能将它们显示为一个条目?

由于

2 个答案:

答案 0 :(得分:1)

这些行:

array_list.add(res.getString(res.getColumnIndex(ST_SURNAME)));
array_list.add(res.getString(res.getColumnIndex(ST_FIRST_NAME)));

将姓氏和名字绑定为ListView中的单独实体。

如果要将数据关联到一个字符串,如“surname,firstName”,那么执行一个简单的字符串连接,如下所示:

array_list.add(res.getString(res.getColumnIndex(ST_SURNAME)) + "," + 
               res.getString(res.getColumnIndex(ST_FIRST_NAME)));

答案 1 :(得分:1)

只需在ArrayList中为每个名称添加一个条目,并按照您希望的方式格式化每个条目。

while(res.isAfterLast() == false)
{
    String name = res.getString(res.getColumnIndex(ST_SURNAME)) + ", " + res.getString(res.getColumnIndex(ST_FIRST_NAME));
    array_list.add(name);
    res.moveToNext();
}