0

我正在编写一个需要实现 Google Play 商店滚动实现的应用程序。有可用于实现它的示例库,例如

  1. https://github.com/nirhart/ParallaxScroll
  2. https://github.com/chrisjenx/Paralloid

另外我需要在这里实现一些额外的效果。

在此处输入图像描述所以就像这里提到的那样,屏幕上有三个可用的视图。(图一)

  1. 视图 A:顶部栏,将是固定高度
  2. 视图 B:修复将包含一些文本信息的大小块。
  3. 视图 C:滚动视图(可扩展)

在这里,我需要相同的视差效果(如支持的库),

  1. 但是要完全滚动(视图A,B,C)我只想滚动直到视图A没有从图片中消失。(图 B)
  2. 然后它应该只允许滚动列表中的视图 C。意味着现在视图 B 应保持在同一位置,直到开始向下滚动(使用视图 A)(图 3)

这里有什么建议吗?

编辑:更新我所做的工作我能够使用kmshack解决方案 来实现这一点,但需要一点点破解。由于仅当列表视图有足够的子视图滚动时才允许滚动,所以我添加了一些空视图并在 Adapter.getView 中进行管理。

但这不是完整的解决方案,因为应用程序列表可能没有任何要显示的项目,并且滚动也应该可以工作。有没有办法在不添加假孩子的情况下使其成为可能?

4

1 回答 1

2

有很多方法可以做到这一点,但基本上:在您的主可滚动视图中,为 A 和 B 留出 2 个空格,但将它们放在可滚动视图之外,然后监听滚动事件并相应地转换和/或转换 A 和 B。

这同样适用于任何类型的视差效果,您只需以“非线性”方式进行翻译,从而产生深度错觉。

对于一些示例,您可以查看Roman Nurik 的这篇 G+ 帖子

几个技巧:

于 2014-12-27T21:09:50.093 回答