ios - UITableView 滚动跳转

标签 ios uitableview scroll contentoffset

最近,当新的 ViewController 被推送时,我的应用程序开始滚动跳转:

UITableViewController scroll jumps

我尝试了不同的答案,但似乎没有任何效果。我了解到我的应用在设置后将负偏移量设置为 CGPointZero:

- (void)viewWillDisappear:(BOOL)animated {

[super viewWillDisappear:animated];

self.tableView.scrollEnabled = NO;

我试图找出是什么设置了偏移量,并且我了解到它是从以下位置调用的 setContentOffset:

UIScrollViewInternal _adjustContentOffsetIfNecessary.

最佳答案

我找到的有关此主题的所有答案均建议设置:

self.automaticallyAdjustsScrollViewInsets = NO;

它不起作用,让我发疯。比我遇到 answer建议 View 层次结构是某些偏移问题的原因。

enter image description here

我很绝望,所以我尝试将这个调试按钮从层次结构的顶部移动,如下所示:

enter image description here

奇怪的跳跃停止了。

后来我了解到您的 tableView 应该始终位于 View 层次结构的开头,以便 autoadjustscrollinsets 功能正常工作,我添加了:

[self.view sendSubviewToBack:self.tableView];

只是为了确保它总是如此,因为苹果不保证它不会破坏 .xibs 层次结构。

关于ios - UITableView 滚动跳转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47399978/

相关文章:

ios - 我的 iOS 应用程序在使用多线程保存时挂起

iOS swift Alamofire解析,创建泛型类解析json数据

jquery - 没有外部内容的无限滚动

jQuery滚动功能从特定高度开始

twitter-bootstrap - 如何在 Bootstrap 模式上收听滚动事件?

ios - 问号 '?'在swift中是什么意思?

android - 为什么 Google Flutter 中底部导航栏中的类似项目的文本大小不同?

swift - Swift 中索引为 3 的 UITableViewEditingStyle

objective-c - 需要一个非常简单的导航 Controller ,在选项卡栏 Controller 内带有表格 View

iOS 11 tableView Header 中的搜索栏在焦点上跳转到屏幕顶部