0

我有类人

class person{
int ID ;
sting FirstName ;
string Last Name ;
String Telephone ;

}

我有ArrayList<person> ;

现在我想显示只包含的简单列表视图FirstName + "," + "LastName"

所以我可以使用类似的代码

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Select Color Mode");

ListView modeList = new ListView(this);
String[] stringArray = new String[] { "Bright Mode", "Normal Mode" };
ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, stringArray);
modeList.setAdapter(modeAdapter);

builder.setView(modeList);
final Dialog dialog = builder.create();

dialog.show();

那么如何将 ArrayList 转换为包含格式的字符串 []FirstName + "," + "LastName"

我可以循环,但是有什么好的方法或简单的方法可以做到这一点,因为我尝试使用适配器但它未能出现在对话中

4

2 回答 2

2

让您ArrayAdapter使用类型person而不是String(也,只需传递ArrayList<person>而不是数组),如下所示:

ArrayAdapter<person> modeAdapter = new ArrayAdapter<person>(this, android.R.layout.simple_list_item_1, android.R.id.text1, theArrayList);

然后覆盖person's 类toString方法:

class person {
        int ID;
        String FirstName;
        String LastName;
        String Telephone;

        @Override
        public String toString() {          
            return "Whatever " + FirstName + " and Whatever  " + LastName;
        }

    }
于 2012-07-01T10:25:53.210 回答
0

最好使用自定义适配器。这里不需要将 ArrayList 转换为 String ArrayList。您可以通过数组列表位置设置数据。

关联

谢谢

于 2012-07-01T10:20:49.197 回答