天天看點

【Android】日常開發中常見的坑,新手必看

1.ListView中的坑

在我們使用ListView的addHeaderView方法時,如果此時你同時設定了ListView的OnItemClickListener監聽事件時,你一定會發現onItemClick方法中的position參數傳回不準确的問題,此時我們可以這樣。

onItemClick(AdapterView<?> parent, View view, int position, long id)
           

在 addHeaderView的時候有一個這樣的方法:

addHeaderView(View v, Object data, boolean isSelectable)
           

其中第一個參數v就是我們需要顯示的視圖對象,第二個參數data 是與視圖相關的資料對象,但三個參數isSelectable就是關鍵了,它決定了是否觸發onItemClick方法,預設是true是以會導緻position位置不正确。

是以解決辦法是:

addHeaderView(view,null,false);
           

這樣就可以了,此外還有一點得注意addHeaderView必須要在setAdapter方法之前調用,否則會報錯