大家好,我是android编程的新手,我有几个问题。希望有人能帮忙。
我正在使用代码:
new ArrayAdapter<Customer> (this, android.R.layout.simple_list_item_multiple_choice,emptyListForInitialization) {...
但是我想使用自己创建的("R.layout.custom_customer_layout")
布局。
如果我用以下方式更改代码行,我可以使用它:
new ArrayAdapter<Customer> (this, android.R.layout.simple_list_item_multiple_choice,emptyListForInitialization)
使用我的布局("R.layout.custom_customer_layout")
并删除代码
View view = super.getView(position, convertView, parent);
然后取消注释其下面的部分(/ * ... * /之间的代码)。
但是我没有getView-Method。
为什么我要参考两次我的布局?
第一次创建新的ArrayList
getView-Method中的第二时间?
这是我代码的重要部分:
private ListView myTestListView;
private void initializeCustomerListView() {
myTestListView = (ListView) findViewById(R.id.listview_customers);
List<Customer> emptyListForInitialization = new ArrayList<>();
ArrayAdapter<Customer> customerArrayAdapter = new ArrayAdapter<Customer> (
this, android.R.layout.simple_list_item_multiple_choice,
emptyListForInitialization) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
/*
View view = getLayoutInflater().inflate(R.layout.custom_customer_layout,null);
TextView textViewName = (TextView)convertView.findViewById(R.id.textView20);
TextView textViewContact = (TextView)convertView.findViewById(R.id.textView21);
TextView textViewMobile = (TextView)convertView.findViewById(R.id.textView25);
textViewName.setText(this.getItem(position).getCustomerName());
textViewContact.setText(this.getItem(position).getCounterpart());
textViewMobile.setText(this.getItem(position).getMobilePhoneNumber());
*/
return view;
}
};
myTestListView.setAdapter(customerArrayAdapter);
}