liangjingkanji / BRV

[使用文档] Android 快速构建 RecyclerView, 比 BRVAH 更简单强大
http://liangjingkanji.github.io/BRV/
MIT License
2.49k stars 317 forks source link

瀑布流列表的Item高度会被分割线影响 #380

Closed TwilightKHQ closed 11 months ago

TwilightKHQ commented 11 months ago

问题描述

瀑布流列表的Item高度会被分割线影响 将item_divider_vertical.xml的布局高度设为300px,添加分割线和不添加分割线,Item的高度不一样

期望结果

无论是否添加分割线都不影响Item的高度

如何复现

希望快速解决请Fork仓库复现问题并附上链接, 否则只能等有空才能排查 凭空猜测只会让问题晦涩难懂, 浪费本项目可持续维护时间

Forked地址:https://github.com/TwilightKHQ/BRV

截图

uTools_1689565998271 uTools_1689565931534 uTools_1689566236939

版本

TwilightKHQ commented 11 months ago

应该和 #371 后面描述的问题有关

liangjingkanji commented 11 months ago

这是RecyclerView的问题, 我无法修复此问题

BRV仅仅是使用官方的方式实现常见的分隔物, 仅支持缩小item来容纳分隔物, 见DefaultDecoration#getItemOffsets的方法中设置偏移

如果对BRV的分隔物功能不满意可以自定义, 并没有局限只能使用divider()函数, 或者你直接可以通过自定义item中元素的显示隐藏来实现分隔物

如果你能解决此问题欢迎pr, 本项目集思广益

liangjingkanji commented 11 months ago

如果你有看文档会知道BRV提供一个计算item是否位于列表边缘的工具类(默认的DefaultItemDecoration也是使用这个工具类实现的)

该工具可以方便判断item内部的视图是否显示从而实现"非分隔物方式"的分割线实现, 可以不占据Item内部空间

或者自己实现ItemDecoration接口