【问题标题】:UIScrollView scrolls when clicking "Back" button in UINavigationBar单击 UINavigationBar 中的“返回”按钮时,UIScrollView 滚动
【发布时间】:2014-03-28 06:45:59
【问题描述】:

我有一个带有分页 UIScrollView(3 页)的 UIViewController。我的视图总是从第二页开始,也就是中间页。问题是当我点击 UINavigationBar 中的后退按钮时,UIScrollView 滚动到第一页,然后它消失了(从导航控制器的堆栈中弹出)。
可见的动画行为很可怕。

当我点击 UINavigationBar 中的 BACK 按钮时,我希望 UIScrollView 不滚动。

当我将屏幕左侧拖动到右侧(触发 BACK 行为)时,也会发生同样的情况。

【问题讨论】:

  • 如果您可以将其简化为非常简单的项目(一个导航控制器,两个视图控制器),只需很少或没有代码,就会向 Apple 提交一份出色的错误报告。
  • 但是,您必须确保 you 不会以某种方式导致滚动。寻找viewWillDisappear 的实现,例如,您可能在哪里滚动(或其他什么)。这就是为什么我说你需要在没有代码的情况下进行复制,这样你就可以证明不是你。
  • @matt 我重新搜索了滚动代码,并调试了 UIScrollView 委托回调,但什么也没有。我会按照你说的做一个简单的项目,看看我是否可以重现相同的行为,谢谢!

标签: ios iphone uiscrollview uinavigationcontroller uinavigationbar


【解决方案1】:

通过一些良好的调试,我注意到滚动视图在“返回”转换期间没有滚动。它只是在转换过程中可见的左侧页面的一部分。

所以通过一个简单的 [scrollView clipsToBounds] 问题就解决了 :)。

【讨论】:

    猜你喜欢
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 2014-05-14
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多