ScrollView中添加ListView
<p>.要点一:去除ListView的scrollBar,添加ScrollView的scrollBar:</p>
<ScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight=""
android:scrollbars="vertical">
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="5dp" android:paddingRight="5dp"
android:paddingTop="6dp" android:paddingBottom="6dp" android:background="@color/LightSteelBlue1"> <TextView android:id="@+id/text" android:text="列表如下:"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/White" android:layout_marginLeft="10dp" android:gravity="center_horizontal"
android:paddingTop="5dp" android:paddingBottom="5dp" android:clickable="true"/>
</LinearLayout>
<ListView android:id="@+id/list_alarm" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_weight=""
android:cacheColorHint="@color/LightCyan2" android:scrollbars="none"/>
</LinearLayout>
</ScrollView>
2.要点二:(设置ListView的高度,否则只能显示1-2行)
在setAdapter之后,在设置ListView的高度(不是wrap_content),其高度 = 每行高度 * 行数 + 行间距 * (行数 - 1),用ViewGroup.LayoutParams 设置ListView 的高度
private void setAdapter(){
ArrayAdapter<String> adapter = new ArrayAdapter<String>
(MainActivity.this,android.R.layout.simple_list_item_1,listSource);
mListView.setAdapter(adapter);
setLvHeight();
}
private void setLvHeight(){
ListAdapter adapter = mListView.getAdapter();
if(adapter == null){
ShowLog.d(TAG, "no data in ListView");
return;
}
int totalHeight = ;
for(int i = ;i < adapter.getCount(); i++){
View itemView = adapter.getView(i, null, mListView);
itemView.measure(, );
totalHeight += itemView.getMeasuredHeight();
}
ViewGroup.LayoutParams layoutParams = mListView.getLayoutParams();
layoutParams.height = totalHeight + (mListView.getDividerHeight() * (adapter.getCount() - ));//总行高+每行的间距
mListView_Alarm.setLayoutParams(layoutParams);
}
方法2:http://blog.csdn.net/kaixinbingju/article/details/8649276
ScrollView中添加ListView的更多相关文章
- 解决在ScrollView中套用ListView显示不正常
最近在设计Android程序时,因为需要在ScrollView中添加一个ListView列表来显示一些信息.刚开始并没有想太多,但添加进去后才发现ListView不论怎样定义都只能显示一行,显示效果很 ...
- ScrollView中嵌套ListView的问题
网上关于怎样在ScrollView中嵌套ListView的讨论有很多,我大概是搜索了一下,简单总结如下: 1.不要在ScrollView中嵌套ListView a.用一个LinearLayout来代替 ...
- [转载]Android: 如何实现ScrollView中含有ListView?
原文地址:Android: 如何实现ScrollView中含有ListView?作者:mailofzxf ListView本身就含有ScrollView,因此把ListView放到ScrollView ...
- 实现ScrollView中包含ListView,动态设置ListView的高度
ScrollView 中包含 ListView 的问题 : ScrollView和ListView会冲突,会导致ListView显示不全 <?xml version="1.0" ...
- ScrollView中嵌套ListView
scrollview中嵌入listview,要是直接把listview嵌进scrollview中,listview的高度是固定的不能进行滑动.默认情况下Android是禁止在ScrollView中放入 ...
- Android 如何在ScrollView中嵌套ListView
前几天因为项目的需要,要在一个ListView中放入另一个ListView,也即在一个ListView的每个ListItem中放入另外一个ListView.但刚开始的时候,会发现放入的小ListVie ...
- 解决ScrollView中包含ListView,导致ListView显示不全
ScrollView 中包含 ListView 的问题 : ScrollView和ListView会冲突,会导致ListView显示不全 <?xml version="1.0" ...
- Android实战技巧:如何在ScrollView中嵌套ListView
前几天因为项目的需要,要在一个ListView中放入另一个ListView,也即在一个ListView的每个ListItem中放入另外一个ListView.但刚开始的时候,会发现放入的小ListVie ...
- Android -- 在ScrollView中嵌套ListView
在做一个工程,这个工程的布局可以相当的复杂,最外面是ScrollView,在ScrollView里面有两个Listview,这下好了,布局出来了,放在机子上跑,卡得想死有木有,信息乱跑乱出现,表示非常 ...
随机推荐
- Android XML文档解析(一)——SAX解析
---------------------------------------------------------------------------------------------------- ...
- 前端模拟发送数据-Chrome下的REST Client
1)确定需要POST的数据 2)拼接数据,POST给服务器 3)查看服务器响应及结果
- osip及eXosip的编译方法
osip及eXosip的编译方法 在最新版本的osip2.exosip2中不支持在VC6.0下编译osip.exosip协议栈的方法 说明: 1.以下文章中的osip版本为3.1.0 2.eXosip ...
- 教程:30分钟学会Adobe Premiere
原文地址:http://tieba.baidu.com/p/2785313831 视频教程地址
- 【hihoCoder第十四周】无间道之并查集
就是基础的并查集.0代表合并操作,1代表查询操作.一开始以为会卡路径压缩,忐忑的交了一版裸并查集,结果AC了.数据还是很水的. 以后坚持做hiho,当额外的练习啦~ #include <bits ...
- 自制USB wifi信号放大天线
这是我的usb wifi天线第一个版本,灵感来自: http://www.instructables.com/id/EQARE4I72GEPUCHTHU/ http://www.usbwifi.orc ...
- WPF与输入法冲突研究之二:汉字输入法会导致WPF程序的崩溃!
如果是输入非汉字的数据信息,可以添加一下内容: xmlns:input="clr-namespace:System.Windows.Input;assembly=PresentationCo ...
- web项目跨域访问
1.同域相互访问 假设A.html 与 b.html domain都是localhost (同域) A.html中iframe 嵌入 B.html,name=myframe A.html有js fun ...
- 对easyui datagrid进行扩展,当滚动条拉直最下面就异步加载数据。
以下方法是通用的,只要把datagrid定义为全局的即可,其他部分的代码不用进行修改! 可以把以下代码放入到一个单独的js文件,然后再需要的页面引入即可! $(function(){ try{ $(& ...
- 并发情况下synchronized死锁
存在缺陷的代码: public class DataPropertyIdAndNameRepositoryImpl{ /** 发布标志 */ private volatile boolean publ ...