ios - iOS 7 中 UITableView 的 contentInset 规则?

标签 ios iphone uitableview

我很好奇系统如何/何时确定是否将 UITableView contentInsets 默认设置为 64。

我有一个 UITableView 放置在常规 UIViewController 中,它本身位于带有半透明导航栏的 UINavigationController 中。 tableview 的自动布局告诉它填充 UIViewController 的 View 。

现在,默认情况下,tableview 的顶部内容插入为 64.f。我可以通过手动设置内容插入或在 UIViewController 上使用 edgesForExtendedLayout 来防止这种行为。现在,我不理会它。

但是,如果我在 self.view 和 tableview 之间插入一个 subview ,tableview 的默认顶部插图变为 0.0f,我必须手动将其调整回 64.f。

我的问题是: View Controller 如何确定是否更改插图?它实际上是否只是检查 self.view 的顶部 subview 是否是 tableview/scrollview?

最佳答案

我今天下午刚遇到这个问题,我在普通的 ViewController 中添加了一个 UIButton 和一个 UITableView。我将 UITableView 的原点设置为 (0, 64),它在导航栏下方看起来很正常。但是在我删除 UIButton 并单独留下 UITableView 之后,它似乎是导航栏下方的另一个 64 插图。真的很奇怪!

并且第一个搜索出来的问题是你的,但是没有答案,真的很烦……但是那里有很好的答案!

简而言之,如果主视图或主视图的第一个 subview 是 UIScrollView 的类或子类,例如UITableView,它的工作原理。 否则, View Controller 不知道要使用哪个 UIScrollView。

这是引用:
iOS 7 Table view fail to auto adjust content inset

关于ios - iOS 7 中 UITableView 的 contentInset 规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24415717/

相关文章:

ios - 修复具有大量状态的巨型 View Controller

ios - UITableView selected indexpath 值给错

iOS - 多设备混合应用错误代码 65 的分发构建失败

iphone - 使用 FMDB 执行 sqlite 查询时遇到问题

iphone - 我的 iPad 应用程序会因为使用 Tapku 库而被应用程序商店拒绝吗?

iphone - xcode iPhone 数组和字典 [noob]

c# - iOS:流式传输大文件

ios - 有没有办法让 UICollectionView 行或标题保持静止,也就是卡住 Pane ?

iphone - iPhone OpenGL ES 2.0 中 glReadPixels 的更快替代品

ios - UitableViewCell 无法正确显示配件