40
40
import android .view .ViewGroup ;
41
41
import android .widget .AbsListView ;
42
42
import android .widget .BaseAdapter ;
43
- import android .widget .HeaderViewListAdapter ;
44
43
import android .widget .ListAdapter ;
45
44
import android .widget .ListView ;
46
45
@@ -637,18 +636,74 @@ public ListAdapter getInputAdapter() {
637
636
}
638
637
}
639
638
640
- private class AdapterWrapper extends HeaderViewListAdapter {
639
+ private class AdapterWrapper extends BaseAdapter {
641
640
private ListAdapter mAdapter ;
642
641
643
642
public AdapterWrapper (ListAdapter adapter ) {
644
- super (null , null , adapter );
643
+ super ();
645
644
mAdapter = adapter ;
645
+
646
+ mAdapter .registerDataSetObserver (new DataSetObserver () {
647
+ public void onChanged () {
648
+ notifyDataSetChanged ();
649
+ }
650
+
651
+ public void onInvalidated () {
652
+ notifyDataSetInvalidated ();
653
+ }
654
+ });
646
655
}
647
656
648
657
public ListAdapter getAdapter () {
649
658
return mAdapter ;
650
659
}
651
660
661
+ @ Override
662
+ public long getItemId (int position ) {
663
+ return mAdapter .getItemId (position );
664
+ }
665
+
666
+ @ Override
667
+ public Object getItem (int position ) {
668
+ return mAdapter .getItem (position );
669
+ }
670
+
671
+ @ Override
672
+ public int getCount () {
673
+ return mAdapter .getCount ();
674
+ }
675
+
676
+ @ Override
677
+ public boolean areAllItemsEnabled () {
678
+ return mAdapter .areAllItemsEnabled ();
679
+ }
680
+
681
+ @ Override
682
+ public boolean isEnabled (int position ) {
683
+ return mAdapter .isEnabled (position );
684
+ }
685
+
686
+ @ Override
687
+ public int getItemViewType (int position ) {
688
+ return mAdapter .getItemViewType (position );
689
+ }
690
+
691
+ @ Override
692
+ public int getViewTypeCount () {
693
+ return mAdapter .getViewTypeCount ();
694
+ }
695
+
696
+ @ Override
697
+ public boolean hasStableIds () {
698
+ return mAdapter .hasStableIds ();
699
+ }
700
+
701
+ @ Override
702
+ public boolean isEmpty () {
703
+ return mAdapter .isEmpty ();
704
+ }
705
+
706
+
652
707
@ Override
653
708
public View getView (int position , View convertView , ViewGroup parent ) {
654
709
@@ -664,7 +719,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
664
719
if (child != oldChild ) {
665
720
// shouldn't get here if user is reusing convertViews
666
721
// properly
667
- v .removeViewAt (0 );
722
+ v .removeViewAt (0 );
668
723
v .addView (child );
669
724
}
670
725
} else {
0 commit comments