我在使用 prefersLargeTitles
并添加 UITableView
时遇到滚动问题。
如果我在导航 Controller 中设置 prefersLargeTitles
并且它的根是 UITableViewController
一切都很好,导航大标题的滚动方式与我们在系统应用(在 iOS 11+ 中)。
问题
但是,如果我使用 UIViewController
并在其中添加一个 UITableView
,滚动似乎会有所不同。导航栏移动得比我实际滚动的更多/更快。每当我滚动到一个触发它的位置时,它只是隐藏/显示大标题,所以我最终会有完全不同的感觉。
最佳答案
原来是布局导致了这个问题。
如果 UITableView
使用Align top to: Safe Area constraint (除了底部,leading and trailing to Safe Area
) 并且不在栏下扩展。
但是,如果我使用扩展布局,将顶部与 superview
对齐,我仍然可以使用 UITableView
并获得大标题及其导航栏的正确行为.
edgesForExtendedLayout = .top
extendedLayoutIncludesOpaqueBars = true
或者使用导航栏的 isTranslucent = true
来扩展它。
关于ios - 使用 prefersLargeTitles 和 UITableView 平滑滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46570313/