Android如何设置列表的最大高度或最多可见个数,超出则以滚动显示

Android如何设置列表的最大高度或最多可见个数,超出则以滚动显示,第1张

最近在做开发的时候,遇到了这样的一个需求:有一个聊天的模板列表,要求使用d框的样式展示,尽可能的做到高度自适应。于是我就开始了各种探索:

探索1>动态的的设置d框的高度,发现无法准确的计算高度,不美观;

探索2>将列表设置成固定高度,发现如果数目少的话就留有空白,不美观;

探索3>动态的设置列表的高度,这个办法还是可以的,使用recycleView做列表,发现高度很难控制,最终放弃了。

探索4>动态的设置列表的高度,只是使用listView实现,最终发现是符合需求的。

好了,闲话不说了,该是上硬菜的时候了。

使用方式

大致思路就是将具体的计算逻辑封装自定义的列表内,这样使用起来的就相当方便,其实就是计算出第一条item的高度,然后乘以最大item的个数就是最终列表展示的高度。当然这也有一个弊端,因为这个思路的前提是假设列表的每个item的高度差距不大,否则列表看着就不那么美观了。

最初尝试了下面的方法,但是有时间限制而且需要手动确认:

后来,发现调用反射方法开启蓝牙可见性,可以到达预期效果,如下:

关闭可见性方法:

欢迎访问Github项目获取更多内容:

https://github.com/MickJson

欢迎点赞/评论,你们的赞同和鼓励是我写作的最大动力!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11165148.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存