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

Maj*_*ter 5 graphics ios parallax

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

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

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

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

Leo*_*uli 5

它实际上非常简单:

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

而已!

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

祝好运!