所以我有一个班级:
class student{
public int id;
public String name;
}
然后我有一个学生类型的adapterArray,并且该适配器被传递到列表视图。我想知道如何让listview只显示学生的名字。 代码:
ListView list=(ListView)findViewById(R.id.list_day_wise_expense);
ArrayAdapter<Student> adapter = new ArrayAdapter<Student>( this,R.layout.increase_size_text, kids);
list.setAdapter(adapter);
其中kids是Student的一个对象数组,list是我的列表视图。 我希望列表显示他们的名字。
答案 0 :(得分:0)
覆盖Intent intent=new Intent();
intent.putExtra("MESSAGE",message);
setResult(2,intent);
类中的toString
方法。
Student
答案 1 :(得分:0)
您只需要覆盖getView()
ArrayAdapter<Student> adapter = new ArrayAdapter<Student>(this, R.layout.increase_size_text, kids){
@Override
public View getView (int position, View convertView, ViewGroup parent) {
View view = convertView == null ?
super.getView(position, convertView, parent) : convertView;
TextView tv = (TextView) view.findViewById(R.id./* PUT ID HERE */);
tv.setText(getItem(position).name);
return view;
}
};
并且您不需要创建自己的布局。这也有效:
ArrayAdapter<Student> adapter = new ArrayAdapter<Student>(this, android.R.layout.simple_list_item_1, kids){
@Override
public View getView (int position, View convertView, ViewGroup parent) {
View view = convertView == null ?
super.getView(position, convertView, parent) : convertView;
TextView tv = (TextView) view.findViewById(android.R.id.text1);
tv.setText(getItem(position).name);
return view;
}
};