防止 UIScrollView 重置 contentOffset
Posted
技术标签:
【中文标题】防止 UIScrollView 重置 contentOffset【英文标题】:Prevent UIScrollView from resetting contentOffset 【发布时间】:2016-03-02 07:17:22 【问题描述】:我目前正在使用 UIScrollView 并排存储 2 个表格,类似于 Pinterest 对其 Activity 页面的处理方式。但是,当我点击第二张桌子并访问新的 UIViewController 时,返回会重置 contentOffset,因此,我回到了错误的第一张桌子上。
我可以锁定 contentOffset 还是有其他方法可以做到这一点?
提前致谢。
【问题讨论】:
您在第一个包含 UiScrollView 的 VC 中是否在 viewWillAppear 中进行了处理? ,您可以将当前偏移量存储在视图中将消失 用收藏视图试试,Pinterest 使用收藏视图 问题是当你转到另一个VC时,contentOffset会重置为零。我希望 contentOffset 保持在第二个 UITableView,这样当我回到第一个 VC 时,它会显示第二个 UITableView 而不是第一个 UITableView。 你有没有找到解决这个问题的办法?我也面临同样的情况。 【参考方案1】:在包含 UIScrollView 的 UIViewController 中试试这个:
self.automaticallyAdjustsScrollViewInsets = NO;
【讨论】:
还是一样。当动画开始移动到第二个 VC 时,第一个 VC 的 UIScrollView contentOffset 被重置为零。 从第一个 VC 到第二个,你使用什么样的 segue? 我正在使用 pushViewController @K.Liu 我刚刚创建了一个包含 2 个 VC 的快速故事板应用程序。第一个 VC 有一个带有垃圾的滚动视图和一个将 segue 推到第二个 VC 的按钮。如果我在滚动视图中向下滚动,转到第二个 VC,然后按回第一个,我的滚动视图与单击 segue 按钮之前的位置相同。 嗨,迈克,在 x 轴上偏移怎么样。是一样的吗?我有 2 个 uitableViews 并排。以上是关于防止 UIScrollView 重置 contentOffset的主要内容,如果未能解决你的问题,请参考以下文章
UIScrollView 滚动后 UITableView contentOffset 重置
contentOffset 在 UIScrollView 缩放结束时重置