视差滚动视图(雅虎天气般喜欢)

这不是一个严格的编程问题,而是更多的“如何实现这个”问题。

我很好奇(并且正在研究可能需要这个的应用程序)如何实现左右视差滚动。 要确切了解我的意思,请查看Yahoo Weather应用程序(它是免费的 – 不用担心)。

他们是否只为每个视图使用一个视图控制器或单独的控制器?
实现这个的最简单方法是什么? 我在这里找到了这个主题 ,有点解释了一下,但他们什么时候从他们的服务器获取信息? 是在更改视图还是在应用程序启动时?

任何有关如何实现这种滚动的信息都将非常受欢迎。

实际上它非常简单:

  • 子类UIScrollView
  • 添加UIView * parallaxView; 作为@property
  • 添加一个CGFloat parallaxFactor作为@property
  • 覆盖layoutSubviews
  • 调用super,然后使用self.scrollOffset * parallaxFactor定位parallaxView

而已!

我自己制作了一个多function的UIScrollView子类,它非常简单易用,非常适合这种情况! 在GitHub上获取它: https : //github.com/LeonardPauli/LPParallaxScrollView

祝你好运!