位置: 编程技术 - 正文

ScrollView嵌套ListView的解决方案(scrollview嵌套flatlist)

发布时间:2024-02-27

推荐整理分享ScrollView嵌套ListView的解决方案(scrollview嵌套flatlist),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:scrollview嵌套webview,scrollview嵌套collectionview,scrollview嵌套listview滑动冲突,scrollview嵌套viewpager不显示,scrollview嵌套webview滑动冲突,scrollview嵌套flatlist,scrollview嵌套scrollview,scrollview嵌套listview滑动冲突,内容如对您有帮助,希望把文章链接给更多的朋友!

在开发的过程当中,由于手机屏幕的大小的限制,我们经常需要使用滑动的方式,来显示更多的内容。在最近的工作中,遇见一个需求,需要将ListView嵌套到ScrollView中显示.而默认情况下,ScrollView中嵌套了ListView后,ListView的显示区域只能刚刚好看到一条数据,另外如果ScrollView中还有其它的控件,即使是放在ListView控件的顶部,显示的时候默认还是会显示在ListView控件所在的位置上.而处理ListView控件顶部的其它控件将被隐藏.

方案1:

于是乎有了如下布局:

运行程序,如下结果,无论你如何调整layout_width,layout_height属性,ListView列表只显示一列!

在查阅的各种文档和资料后,发现在ScrollView中嵌套ListView空间,无法正确的计算ListView的大小,故可以通过代码,根据当前的ListView的列表项计算列表的尺寸。实现代码如下:

运行结果,OK问题搞定.

ScrollView嵌套ListView的解决方案(scrollview嵌套flatlist)

注意:

上面这个方法就是设定ListView的高度了,在为ListView设置了Adapter之后使用,就可以解决问题了。但是这个方法有个两个细节需要注意: 一是Adapter中getView方法返回的View的必须由LinearLayout组成,因为只有LinearLayout才有measure()方法,如果使用其他的布局如RelativeLayout,在调用listItem.measure(0, 0);时就会抛异常,因为除LinearLayout外的其他布局的这个方法就是直接抛异常的,没理由…。我最初使用的就是这个方法,但是因为子控件的顶层布局是RelativeLayout,所以一直报错,不得不放弃这个方法。 二是需要手动把ScrollView滚动至最顶端,因为使用这个方法的话,默认在ScrollView顶端的项是ListView,具体原因不了解,求大神解答…可以在Activity中设置:

方案2:自定义可适应ScrollView的ListView上面三个构造方法完全不用动,只要重写onMeasure方法,在xml布局中和Activty中使用的ListView改成这个自定义ListView就行了。这个方法和方法1有一个同样的毛病,就是默认显示的首项是ListView,需要手动把ScrollView滚动至最顶端。

搭建一个应用程序框架-做点什么 以前只做过模块功能的开发,在开源项目或者别人搭建的项目框架下敲码。突然让我来搭建一个app的框架,竟然不知道如何下手了!郁闷,好吧先从网

Android 自定义RadioGroup布局 前段时间项目中需要这种效果,自定义RadioGroup布局,但是前提是要找到RadioButton。我搜集各种资料,尝试各种测试。终于有了自定义RadioGroup布局。自定

android(5) 等待窗口 一.等待窗口实现:记录一下,有时候我们下载数据的时候为了提高用户的体验,加一个等待窗口还是有必要的,有两种等待窗口:第一种旋转的ProgressBar

标签: scrollview嵌套flatlist

本文链接地址:https://www.jiuchutong.com/biancheng/385161.html 转载请保留说明!

上一篇:AndroidのListView包含CheckBox时滑动丢失选中状态的解决(歺包做法)

下一篇:搭建一个应用程序框架-做点什么(如何搭建应用服务器)

  • 出口退税率怎么算
  • 附加税的计算公式2023
  • 税率中的速算扣除数是什么
  • 政府补贴的账务属于哪个科目
  • 土地价款抵扣增值税怎么做账
  • 年度财务报表怎么作废
  • 核定征收季度核定销售额
  • 申请100万增值税发票资格
  • 特殊销售业务包括什么
  • 一般纳税人无票收入会计分录
  • 销售应税消费品应交的消费税
  • 制造费用工资结转怎么算
  • 是否退还投标文件
  • 购入的固定资产
  • 固定资产暂估入账条件
  • 为什么有的单位没有住房公积金
  • 现金福利需要发票吗
  • 土地买卖所得税由谁承担
  • 银行手续费做账漏掉
  • 加计抵减是什么时候开始的
  • 委托贷款是流动资金贷款吗
  • 筹建期间发生的费用计入哪里
  • 样品寄送时运费支付的对策
  • 平均净资产计算公式是什么意思
  • 报销旅游门票怎么报销
  • 土地补偿款会议记录范文
  • 微信小程序实现页面跳转
  • yoosee怎么安装
  • phpfread
  • 30个极致实用的东西
  • 酒店购买天然气流程
  • 哪些情况下公司不能辞退员工
  • 借递延所得税资产贷以前年度损益调整
  • 预提的奖金能不能提前申报个税
  • 工程项目会计怎么样
  • php调用网址
  • js let与var区别
  • 物业会计账务处理大全
  • 待抵扣进项税额什么意思
  • 旅游业差额开票税率
  • 延期付款利息收入要交增值税吗
  • 2020年小规模纳税人增值税政策
  • 企业经营的利润目标长期化
  • 房地产企业代收费用
  • 税务会计账务处理一般方法有哪些
  • 已使用的存货,计价方式不允许修改
  • 财政直接支付是什么科目
  • 税率调整后税差怎么算
  • 发票怎么领用具体流程
  • 发票被认证
  • 营改增后建筑业税率
  • 未分配利润借方是什么意思
  • 工业企业外购材料支付的采购费用应计入什么账户
  • 商品流通企业如何控成本
  • aspnet数据库访问
  • 隔离模块与隔离模块如何连接?
  • 过程要求可包括哪些内容
  • centos中rpm包怎么安装
  • 七彩虹主板 csm
  • win7用固态
  • 升级win8.1 64位系统后无法玩剑灵怎么办?win8.1系统无法玩剑灵的解决方法
  • win8打开桌面
  • win8.1无法启动怎么办
  • 如何设置微信语音来电铃声
  • ubuntu20.04.2
  • linux安装openssh-server
  • porteus中文版下载
  • gamebar.exe是什么进程
  • win8开始在哪里
  • xp系统修改文件类型
  • macbook os x
  • win8老是自动安装软件
  • win8安装界面
  • ubuntu怎样
  • 如何设置虚拟内存大小
  • postgres.exe是什么进程 postgres进程查询
  • ubuntu nfs配置
  • 大家看的是什么
  • 服务器防arp欺骗怎么解决
  • threejs入门教程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号