1

编辑我通过使用CoordinatorLayout和 aAppBarLayout作为标题的包装解决了这个问题,而TabLayout. 应该很明显,但是哦。

原始问题:我有一个设计,我尝试了多次迭代来完成我的应用程序。我知道嵌套可滚动视图不是更喜欢,但我相信是可行的,我真的找不到我正在寻找的具体问题的答案,所以就到这里。

这是设计的简单模型以及我如何想象如何实现它:

在此处输入图像描述

这是某种配置文件设计,顶部有一些文本视图、横幅、头像和jadajada。下面是三个选项卡,用于切换它们下面的内容。

每个选项卡的内容都是同一种对象,它们只是有自己的“过滤器”

下面的实现在开始时非常简单。

  • 我们使用recyclerview

  • 在里面我们有一些不同的viewholders,其中一个包含一个viewpager。

  • viewpager 包含其中包含另一个 recyclerview 的片段。

通过这种方式,我发现了很多问题。而且还没有真正完成,所以一切都感觉就像一个单一的滚动视图。

我也尝试过对所有内容都使用一个回收视图,但选项卡之间的动画并不是我们真正想要的,这也是一个真正的不一致混乱。

我认为我真正的问题是我是否将水放在头上,我应该以不同的方式解决这个问题吗?有没有其他人以优雅的方式做到这一点?

4

1 回答 1

1

前段时间我面临同样的任务,在我看来,使用 ViewPager 作为嵌套滚动视图是个坏主意

诀窍是仅对整个屏幕使用多个 RecyclerView。我准备了一个简单的例子你怎么做

https://github.com/tpec1k/NestedRecyclerViews

示例 gif(太大而无法内联):https ://www.dropbox.com/s/129te4ie87uuyqi/device-2017-08-16-125556.gif?dl=0

PS 我知道 RecyclerView 不是 ViewPager 但它可能非常相似 Look,您只需要添加标题条,修复滚动行为并覆盖更改项动画。

PPS 我没有尝试,但看起来 github 上有一些库在 recyclerview 中实现 viewpager 逻辑: - https://github.com/lsjwzh/RecyclerViewPager

于 2017-08-16T10:05:27.687 回答