博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小知识积累
阅读量:4557 次
发布时间:2019-06-08

本文共 973 字,大约阅读时间需要 3 分钟。

scrollview和listview嵌套会造成不能滚动的问题,listview只会显示一行多一点

解决方法:在scrollview中添加属性:android:fillviewport="true",这就可以让listview显示全屏了。

scrollview滚动是因为高度超出了手机屏幕的高度,然而listview的高度是不确定的,所以导致scrollview无法滚动。

如果listview的高度超过了屏幕高度,又想要scrollview能够滚动,这需要在设置adapter后重现计算listview的高度

public void setListViewHeightBasedOnChildren(ListView listView) {

ImageAdapter listAdapter = (ImageAdapter) listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = 0;
int width = 0;
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
width = listItem.getMeasuredWidth();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight
+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));
params.width = width;
listView.setLayoutParams(params);
}

 

转载于:https://www.cnblogs.com/baiyongquan/archive/2012/06/26/2563676.html

你可能感兴趣的文章
Redis主从复制看这篇就够了
查看>>
部署和调优 2.3 tomcat中JDK安装
查看>>
洛谷 P1202 [USACO1.1]黑色星期五Friday the Thirteenth 题解
查看>>
(4.20)SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧...
查看>>
基本数据类型(数字和字符串)
查看>>
函数__装饰器
查看>>
linux system函数分析
查看>>
前端优化措施
查看>>
论学习汉语和学习编程的异同点
查看>>
linux img文件压缩及解压
查看>>
Jolt:软件业的奥斯卡
查看>>
互联网技术架构给我们的启示
查看>>
第六天冲刺
查看>>
Windows 10在2018四月更新中默认安装了OpenSSH客户端
查看>>
Linux 下的 scp
查看>>
理解同步,异步和延迟脚本
查看>>
MMS源码中异步处理简析
查看>>
XMind 6 如何画流程图
查看>>
final发布评价
查看>>
DLL远程注入与卸载
查看>>