在 iOS8 中使用 ModalPresentationStyle OverCurrentContext 时 ScrollsToTop 不起作用

ScrollsToTop not working when using ModalPresentationStyle OverCurrentContext in iOS8

当呈现具有 UIScrollViewUIScrollView 的子类(如 UITableViewUICollectionView 并使用 UIModalPresentationStyleOverCurrentContext 呈现的控制器的模态视图控制器时当点击状态栏时,scrollview 不会滚动到顶部,这种行为发生在 iOS8 而不是 iOS7.

点击状态按钮时不会滚动到顶部的一个原因是有多个滚动视图。控制器中只有一个 scrollView 应该启用 scrollsToTop,而所有其他滚动视图都应该禁用它。虽然这在 iOS7 中不会发生,但在 iOS8 中,如果呈现控制器具有启用了 scrollsToTop 的滚动视图,则呈现控制器的滚动视图将不会滚动到顶部。由于在当前上下文中呈现模态视图控制器时不会调用 viewWillAppear,viewWillDisappear,因此呈现控制器中的滚动视图应该禁用 scrollsToTop 属性 并且如果需要有允许呈现的控制器重新启用它的回调。