Android开发实现ScrollView中嵌套两个ListView的方法
本文实例讲述了Android开发实现ScrollView中嵌套两个ListView的方法。分享给大家供大家参考,具体如下:
做的项目中要使用两个ListView在同一个页面上下显示,因为数据源不同,不能通过在Adapter中设置标志位去区分显示,最后只能硬着头皮做一个ScrollView嵌套两个ListView,但按正常情况是不能同时显示的,会出现上面的ListView完全显示,下面的只显示一个Item,查了一些资料终于成功了
主要有一个ListViewUtility,代码如下:
importjava.io.File;
importandroid.content.Intent;
importandroid.net.Uri;
importandroid.view.View;
importandroid.view.ViewGroup;
importandroid.widget.ListAdapter;
importandroid.widget.ListView;
publicclassListViewUtility{//是一个Scrollview中添加两个Listview的显示布局
publicstaticvoidsetListViewHeightBasedOnChildren(ListViewlistView){
ListAdapterlistAdapter=listView.getAdapter();
if(listAdapter==null){
//pre-condition
return;
}
inttotalHeight=0;
for(inti=0;i
然后再写两个Listview,如下
signListview.setAdapter(mYinggaoSignListAdapter);
appListView.setAdapter(adapter);
ListViewUtility.setListViewHeightBasedOnChildren(signListview);
ListViewUtility.setListViewHeightBasedOnChildren(appListView);
最后把两个ListView添加到ListViewUtility中,并且两个ListView要填充完再添加,两个ListView中的adpter的布局最外层要使用LinearLayout,只有LinearLayout在ListViewUtility中才能成功测量每个Item的高度,不然就会出错
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android基本组件用法总结》、《Android开发入门与进阶教程》、《Android布局layout技巧总结》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。