ListView 不执行getView()方法

分析:

首先确认数据有没有发生变化;

其次是需要注意istView在开始绘制的时候,系统首先调用getCount()函数,根据他的返回值得到 listView的长度,然后根据这个长度,调用getView()逐一绘制每一行。

 

错误:(在调用getCount()函数时,返回值为0)

productList=new ArrayList<AddPhoneContracts>();
List<AddPhoneContracts> p = xnb_util.getAllPhone();
for(AddPhoneContracts add:p){
productList.add(add);
}
ProductComparable sort = new ProductComparable();
ProductComparable.sortASC = true;
ProductComparable.sortByState = true; 
Collections.sort(productList, sort);
myAdapter = new MyListAdapter(mContext);
mListView.setAdapter(myAdapter);
layout.setVisibility(View.INVISIBLE);

改正:

 

productList=new ArrayList<AddPhoneContracts>();
List<AddPhoneContracts> p = xnb_util.getAllPhone();
for(AddPhoneContracts add:p){
mContactsName.add(add.getName());
productList.add(add);
}
ProductComparable sort = new ProductComparable();
ProductComparable.sortASC = true;
ProductComparable.sortByState = true; 
Collections.sort(productList, sort);
myAdapter = new MyListAdapter(mContext);
mListView.setAdapter(myAdapter);
layout.setVisibility(View.INVISIBLE);

 

posted on 2014-06-26 15:15  NBYH  阅读(458)  评论(0)    收藏  举报

导航