1、如果listview的item中有button,checkbox的時候,往往如果不做處理的情況,button,checkbox會獲得焦 點,導致listview不相應OnItemLongClickListener()這個方法,搶佔了Item的獲得焦點的能力,解決的辦法有兩種:
(1)在button,checkbox的xml佈局文件中添加代碼:
android:focusable=“false”
即就可以相應OnItemLongClickListener()這個方法了。
(2)在listview中的item的佈局文件中,在總的LinearLayout的屬性中添加一句話:
android:descendantFocusability="blocksDescendants"
即把在LinearLayout裏面的focusable屬性都設置成了false,
就可以相應OnItemLongClickListener()這個方法了。
2、在ListView的item中有GridView,搶佔焦點的情況,解決辦法步驟如下:
(1) 現在ListView的Item的最外面的LinearLayout中設置:、
android:descendantFocusability="blacksDescendants"
(2) 再在gridview的getView()方法中設置:
gridview.setClickable(false);
gridview.setPressed(false);
gridview.setEnabled(false);
即就可以相應OnItemLongClickListener()這個方法了。
3、如果在佈局文件中有一個或多個GridView,如果在item的佈局中加入了ScrollView,如果不對gridview的item設置高度的話,這個滾動的效果只是在GridView中體現,而不在整個listview佈局中體現,要想在整個佈局中有上下滾動的效果,就需要設置gridview中的item的高度進行設置。具體代碼可以參考下面的: