你的位置:首页 > 操作系统

[操作系统]android开发中使不同的listview同时联动


       在做一个Android程序时,需要在一个屏幕上显示两个不同的listview,开始用< linearlayout>包裹这两个listview在<ScrollView >设置时,

出现了不能同时联动的问题。

 其中一个listview是我需要把数据绑定到这张图片上,如图:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

绑定内容请忽略!!!

后来才知道需要设定每个listview的高度,并且绑定到View中, 才能实现同时联动。

 1 public void SetListViewHeight(ListView listView) {   2     ListAdapter List_Adapter = listView.getAdapter();   3     if (List_Adapter == null) {   4       return;   5     }   6     int ALLHeight = 0;   7     for (int i = 0; i < List_Adapter.getCount(); i++) {   8       View listItem = List_Adapter.getView(i, null, listView);   9       listItem.measure(0, 0); // 在还没有构建View 之前无法取得View的度宽。在此之前我们必须选 measure 一下.  10       ALLHeight += listItem.getMeasuredHeight();  11     }  12     ViewGroup.LayoutParams params = listView.getLayoutParams();  13     params.height = ALLHeight + (listView.getDividerHeight() * (List_Adapter.getCount() - 1)); // listView.getDividerHeight()获取子项间分隔符占用的高度14      15                         // params.height得到整个ListView完整显示需要的高度  16     listView.setLayoutParams(params);  17   }

在需要绑定的listview后面调用一下 “SetListViewHeight(ListView listView)”函数,就能实现两个或多个不同的listview同时联动。