如何在 Twitter iOS 7 应用程序中实现可滑动的时间线

Posted

技术标签:

【中文标题】如何在 Twitter iOS 7 应用程序中实现可滑动的时间线【英文标题】:How to achieve swipable timeline as seen in twitter's iOS7 app 【发布时间】:2014-04-18 17:07:24 【问题描述】:

twitter ios 应用如何实现分页的可滑动时间线?它是简单的 3 UITableView 嵌套在分页滚动视图中还是使用自定义视图控制器转换?

我尝试了嵌套的 UITableView 方法,但是当您向下滚动时,内容不会像 twitter 应用程序那样在导航栏下移动。因为它是嵌套的 UITableView 滚动而不是父滚动视图。

Original Source link of images

【问题讨论】:

【参考方案1】:

我最近使用UIPageViewControllerUITableViewController 的内容做了一个非常相似的行为。这很容易实现。对于 NavigationBar 中的点,您只需添加一个包含 UIPageControl 的自定义 titleView

举个例子:

您需要一个实现UIPageViewControllerDataSource 协议的UIPageViewController。 dataSource 要求提供方法:

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
  viewControllerBeforeViewController:(UIViewController *)viewController;

- (UIViewController *)pageViewController:
                      (UIPageViewController *)pageViewController
   viewControllerAfterViewController:(UIViewController *)viewController;

您只需要返回显示您的内容的UITableViewController 实例。 刷卡等是UIPageViewController的默认行为

有关更详细的示例,请查看此tutorial,它对我有很大帮助。

【讨论】:

谢谢,我刚刚试了一下,效果很好。但是,您将如何为导航栏标题转换设置动画呢?似乎没有可靠的方法来跟踪 UIPageViewController 的内容偏移量。我可以在 UIPageViewController 中跟踪 UIScrollView 的偏移量,但是当页面更改时偏移量会重置。

以上是关于如何在 Twitter iOS 7 应用程序中实现可滑动的时间线的主要内容,如果未能解决你的问题,请参考以下文章

在 MEAN 堆栈中实现 facebook / twitter 样式提要的最有效方法是啥?我应该考虑socket.io吗? [关闭]

如何在 iPhone 应用中实现 Facebook 和 Twitter 通知表

如何在我的 Sprite Kit 游戏应用中实现 Facebook 和 Twitter 发布?

如何在 Kivy 中实现社交分享按钮

PhoneGap:iOS 7 中的 UIPickerView 不会像在 iOS 6 中那样自动调整字体大小。关于如何在 iOS 7 中实现的任何解决方案?

如何在 react native 中实现 Twitter 个人资料屏幕的 UX,可折叠标题(Sticky TabBar)和可滚动选项卡?