当pushViewControllerAnimated时,iOS UIScrollView / UITableView contentOffset被重置:

时间:2014-11-23 15:38:28

标签: ios uitableview uiscrollview contentoffset

我有一个简单的UIViewController,其UITableView viewsubview。我想要隐藏我的tableview的tableViewHeader选项。这工作正常 - 我可以调整内容偏移量与headerView的高度和它的所有好。但是,当我要转换到新VC(通过推送)时 - 在转换动画期间,tableView的contentOffset重置为{0,0} - 基本上显示标题视图。

有没有办法可以保留tableView的contentOffset,直到屏幕上显示新的VC为止?

我注意到如果tableView的contentSize大于superview的边界(即,有多个单元格可以显示) - 那么contentOffset不会被重置。我在self.tableView.contentOffset.y的日志viewDidDisappear - 在第一个实例中(当contentSize较小时) - 日志打印0,如果不是这样 - 那么它打印{{ 1}}(这是预期值)。 ?

更新

44viewWillLayoutSubviews中设置所需的contentOffset值似乎工作正常,但我不明白这样做的含义。不幸的是,这在iOS 7上不起作用,并且仅在iOS 8上实现了预期的行为。

0 个答案:

没有答案