【问题标题】:Rules for the contentInset of a UITableView in iOS 7?iOS 7 中 UITableView 的 contentInset 规则?
【发布时间】:2014-06-25 18:15:43
【问题描述】:

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

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

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

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

我的问题是:视图控制器如何确定是否更改插图?它实际上只是检查self.view的顶部子视图是否是tableview/scrollview?

【问题讨论】:

    标签: ios iphone uitableview


    【解决方案1】:

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

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

    简而言之,如果主视图或主视图的第一个子视图是 UIScrollView 的类或子类,例如UITableView,它可以工作。否则,视图控制器不知道哪个 UIScrollView 工作。

    这里是参考: iOS 7 Table view fail to auto adjust content inset

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-23
      相关资源
      最近更新 更多