liangjingkanji / BRV

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

老哥,这个添加头布局能不能像brvah一样添加一个view当作header啊? #89

Closed SaltedFish-Extreme closed 2 years ago

SaltedFish-Extreme commented 2 years ago

image

liangjingkanji commented 2 years ago

不考虑, 认为没必要 因为请求头也是一种类型罢了. 完全独立做不到. 即使数据隔离但是缺省页还是会被包括进去. BRVAH只是添加一个LinearLayout作为Header而已这种方式很不好, 当你面临其他LayoutManager时候或者缺省页都会有问题 所以完全独立的Header推荐使用CoordinatorLayout实现

SaltedFish-Extreme commented 2 years ago

@liangjingkanji 好吧,麻烦老哥了😂

SaltedFish-Extreme commented 2 years ago

@liangjingkanji 但是老哥,我就想要在recyclerView上方加一个轮播图,就在页面顶部,下拉recyclerView就隐藏,当recyclerView拉到顶部时候才显示,这样要怎么用CoordinatorLayout,layout_behavior都是跟着一起recyclerView一起隐藏显示😢

liangjingkanji commented 2 years ago

"下拉RecyclerView隐藏?" 你确定你没说错吗? 上下方向你是不是搞反了

SaltedFish-Extreme commented 2 years ago

"下拉RecyclerView隐藏?" 你确定你没说错吗? 上下方向你是不是搞反了

啊,我的意思就是recyclerView加载下面数据的时候😂手指是上拉😂

liangjingkanji commented 2 years ago

你可能不会使用CoordinatorLayout, 他支持控制隐藏的

你看下Demo里面的CoordinatorLayout演示代码. 看下是不是你要的效果

SaltedFish-Extreme commented 2 years ago

你看下Demo里面的CoordinatorLayout演示代码. 看下是不是你要的效果

跟这个不大一样,我是想在recyclerView拉到最上面第一条的时候再往上拉才显示轮播图,往下拉数据时候就隐藏,demo里这个是跟随recyclerView滚动来自动隐藏显示,我就是想实现NestedScrollView这种嵌套滚动的效果😢但是用这个跟recyclerView有冲突

liangjingkanji commented 2 years ago

demo我刚更新的, 你说的旧的效果吧

liangjingkanji commented 2 years ago

而且我都说了显示隐藏 CoordinatorLayout可以自己控制

SaltedFish-Extreme commented 2 years ago

@liangjingkanji 是这样的效果了😂

SaltedFish-Extreme commented 2 years ago

@liangjingkanji 唉,老哥,我主activity用的CoordinatorLayout+AppBarLayout+Toolbar+FragmentContainerView+BottomNavigationView 多fragment都是填充到FragmentContainerView里的,在fragment里再用CoordinatorLayout嵌套就冲突了,主activity里的layout_behavior就不管用了,而且页面还会显示不全,可能是被CoordinatorLayout遮挡住了,绞尽脑汁也解决不了,我刚才想用BRV的多布局还有用ConcatAdapter来实现一个recyclerView嵌套两个adapter也实现不了,感觉我还是用不明白这个框架,要不我就换成BRVAH来实现recyclerView头部布局吧,只用这个做不需要头部布局的😢

liangjingkanji commented 2 years ago

我都没搞懂你. 第一次见Coordinator还需要嵌套的. 另外请求头就是多类型. BRVAH也是用的一个LinearLayout作为请求头. 你灵活思考下 至于你要怎么实现都行

而且主页你最好不要包含Toolbar. 因为主页很多情况下Toolbar都不是固定效果的(比如"我的"可能就压根没有Toolbar). 另外如果你主页是底栏+Fragment我建议你使用ViewPager不要去使用Fragment来show/hidden(replace和Navigation也不推荐)

liangjingkanji commented 2 years ago

另外这个框架就是实现了一个自定义的BindingAdapter. 不存在无法使用ConcatAdapter

如果你觉得demo使用的setup函数创建的. 文档也说了你点开setup函数就可以看到源码就是创建一个BindingAdapter对象

liangjingkanji commented 2 years ago

写代码切记不要思想固化. 看界面布局灵活一点

SaltedFish-Extreme commented 2 years ago

@liangjingkanji 好的老哥😂

liangjingkanji commented 2 years ago

基本上不存在需要你Coordinator嵌套情况.
你也不要把Toolbar写到主页. Toolbar最好写到Fragment里面

SaltedFish-Extreme commented 2 years ago

基本上不存在需要你Coordinator嵌套情况. 你也不要把Toolbar写到主页. Toolbar最好写到Fragment里面

嗯,我当时没想过‘我的’页要隐藏或者不显示toolbar,只在‘我的’fragment恢复时把toolbar右边的菜单项隐藏了😂 我本来是打算直接用原来做第一行代码里的demo时的MaterialDesign的布局的,这样感觉用Navigation+FragmentContainerView填充单独的fragment比较方便,导航的代码也少,比较直观😂 等做完这一版之后下一版换ViewPage2试试🤔 因为我主activity需要指定布局行为让 标题栏 底部选项卡 悬浮按钮 根据填充的fragment滚动页面时联动,正好使用CoordinatorLayout这套,在填充的fragment里要指定布局行为确实只能嵌套了😂

SaltedFish-Extreme commented 2 years ago

我本来昨天找了个CoordinatorLayout和RecyclerView联动的自定义布局行为,但是因为嵌套的问题,actviity里面的就没有用了,现在就先给RecyclerView添加头布局看看效果能不能实现吧🤔

https://user-images.githubusercontent.com/54784104/150158493-d9f37bf8-5ad9-48cf-a58d-fb0440392fc2.mp4

LillteZheng commented 2 years ago

同问,如何在库中添加一个 bannerView 轮播图

liangjingkanji commented 2 years ago

TextView怎么添加BannerView就怎么添加

创建一个layout. 里面写个<BannerView/>. BannerView这里假设是第三方框架实现的自定义View