如何检测列表视图是否具有适配器集

时间:2011-11-02 16:10:15

标签: android listview

我想知道我的listview何时没有设置适配器。我的意思是,有没有办法知道我何时调用了setListAdapter(mAdapter);我的代码没有条件?

我想在listview中添加一个标题,但第一次是:

if(getListView().getAdapter() != null){
    WWDisplayUtils.addHeaderButton(mTaxis, mAirport, AirportDetailsTaxi.this);
    setListAdapter(mTaxiA);
}
else    
   mTaxiA.notifyDataSetChanged();

但是没有做我想做的事。

3 个答案:

答案 0 :(得分:8)

应该不是

if(getListView().getAdapter() != null)

if(getListView().getAdapter() == null)

如果您已经设置了页眉或页脚视图,getAdapter()将返回WrapperListAdapter而不是您使用setListAdapter设置的那个()

答案 1 :(得分:1)

你不能只是打电话给getAdapter(),看看它是否为null或者至少看它是否与你认为的不相符?像这样:

if(mListView.getAdapter() != mAdapter){
  //do one thing
}
else{
  //do another thing
}

答案 2 :(得分:0)

致电getListAdapter()