当前位置: 首页 > news >正文

2024-08-05升级问题:Android中ScrollView嵌套listview并解决listview显示问题

问题:

当ScrollView嵌套ListView时,ListView的高度设置为wrap_content时出现ListView的高度不能完全展开,而只显示的第一个Item。

解决方法:

按item的个数乘以高度计算出listview的总高度,并在数据变化时直接设置listview高度,保证完全显示。

具体如下:

1、计算高度:

    private int getListViewHeight(ListView listView){ListAdapter listAdapter = listView.getAdapter();if(listAdapter==null)return 0;int totalHeight = 0;int itemHeight = 0;int count = listAdapter.getCount();for(int i=0;i<count;i++){View itemView = listAdapter.getView(i,null,listView);itemView.measure(0,0);itemHeight = itemView.getMeasuredHeight();totalHeight += itemView.getMeasuredHeight();}int dividerHeight = listView.getDividerHeight() * (count-1);int itemHeight_1 = listView.getResources().getDimensionPixelSize(R.dimen.gnss_item_height);int re = itemHeight_1 * (count+6);return re;//(totalHeight + dividerHeight);}

2、动态设置控件高度:

        ViewGroup.LayoutParams params = listView.getLayoutParams();params.height = getListViewHeight(listView);listView.setLayoutParams(params);

问题解决。

参考链接:

https://blog.51cto.com/u_16175497/9499844

http://www.lryc.cn/news/425396.html

相关文章:

  • 【热度文章】Java设计模式之中介者模 式
  • 【3.0】vue3语法
  • Navicat Monitor 荣获 2024 年 DBTA “最佳数据库性能解决方案”读者选择奖
  • [论文笔记]ZeRO: Memory Optimizations Toward Training Trillion Parameter Models
  • shuashuashua
  • k8s之HPA
  • fun状态上传,并可手动控制
  • 【Canvas与艺术】四扇叶结
  • 基于DVWA-Brute Force(LowMedium)的渗透测试
  • 水库大坝安全预警系统的作用
  • 容器化部署ES集群
  • 使用排名前三的华为解锁工具来绕过忘记的华为锁屏密码
  • 战神之父和前暴雪总裁都很期待《黑神话》:太酷想玩
  • 用户体验的优化:观测云在用户行为分析中的应用
  • ModelScope 部署 Flux 模型
  • ArkTs基础语法-声明式UI-基本概念
  • Day26 线程学习
  • eNSP 华为三层交换机实现VLAN间通信
  • 【多模态大模型】LLaMA in arXiv 2023
  • (转)java中restful接口和普通接口的区别
  • 灵办AI免费ChatGPT4人工智能浏览器插件快速便捷(多功能)
  • VulnHub:BlueMoon
  • 处理filter里抛出的异常
  • IndexedDB深度解析:JavaScript的客户端数据库
  • C语言中的函数指针和返回值为数组的函数指针对比
  • 根据字符串的长度和字符值的大小来对字符串切片进行排序
  • RabbitMQ 的工作原理
  • WPF 资源、引用命名空间格式、FrameworkElement、Binding、数据绑定
  • vue3-03-创建响应式数据的几种方法
  • stm32智能颜色送餐小车(openmv二维码识别+颜色识别+oled显示)