ios - 如何设置我的 iOS Storyboard以像 Instagram Stream 一样弹跳?

标签 ios storyboard instagram bounce

我正在构建一个包含社交内容流的应用程序,并试图了解 Instagram 如何在应用程序中进行流式传输的行为。所以基本上是一个顶部标题,它滚动出屏幕但在它和内容之间弹跳。我可以让顶部标题滚出屏幕,我可以让 View 不反弹,但我想使用 Pull 来刷新,最终会超过“人造”导航栏 UIView .我知道普通的 Navbar 会产生这个,但这个滚动的是另一回事。

目前我有一个 UITableview有一个 UIViewUITableViewCell 之上一切都很好,除了反弹发生在UIView之上.我想我需要得到 UIViewUITableView 之上但是在 UITableViewController 中, Storyboard不允许我放置 UIViewUITableView 之上.

有什么想法吗???

谢谢

最佳答案

好吧,我终于让这一切都起作用了,所以我想我会为每个人发布答案。

基本上我设置了一个标准的导航栏,然后在 scrollViewDidScroll 上我得到滚动的偏移量并根据它更改框架。这似乎工作得很好,请参阅下面的 scrollViewDidScroll 方法。

- (void)scrollViewDidScroll:(UIScrollView *)sender {

    //Initializing the views and the new frame sizes.
    UINavigationBar *navbar = self.navigationController.navigationBar;
    UIView *tableView = self.view;

    CGRect navBarFrame = self.navigationController.navigationBar.frame;
    CGRect tableFrame = self.view.frame;

    //changing the origin.y based on the current scroll view.
    //Adding +20 for the Status Bar since the offset is tied into that.
    navBarFrame.origin.y = MIN(0, (sender.contentOffset.y * -1)) +20;
    navbar.frame = navBarFrame;

    tableFrame.origin.y = MIN(0,MAX(-44,(sender.contentOffset.y * -1)));
    tableView.frame = tableFrame;

}

此外,您还需要将 TableView 提高 44px 以补偿滚动,否则您的框架将不够大。我只是在 viewWillAppear 中做了这个,并使框架变大了。

关于ios - 如何设置我的 iOS Storyboard以像 Instagram Stream 一样弹跳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11450959/

相关文章:

ios - 当我从 .storyboard 中删除元素时,它们仍在我的应用程序中吗?

iOS 13 深色模式和启动屏幕 - iOS 10 的后备

WPF动画(同时更改单个元素的多个属性)

facebook-graph-api - 如何从 Instagram Graph API Insights 端点获取 "From Home"和 "From Hashtags"?

php - 使用 PHP 从 Instagram 获取所有具有特定主题标签的照片

ios - iTunesConnect 截图顺序困惑

java - 有没有基于 Java 的 2D 跨平台移动游戏引擎?

ios - 在ios中将字符串转换为整数

ios - Xamarin 表单,我需要在 IOS 项目中做什么才能让照片显示在 IOS 模拟器中?

ruby-on-rails - 503 : Instagram is rate limiting your requests