iOS 7中UITableView的contentInset规则?

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

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

现在,默认情况下,tableview的顶部内容为64.f. 我可以通过手动设置内容插入或在UIViewController上使用edgesForExtendedLayout来阻止该行为。 现在,我要离开它了。

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

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


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

第一个问题是你的,但没有答案,真的很难过......但是那里有很好的答案!

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

以下是参考:iOS 7表视图无法自动调整内容插入

链接地址: http://www.djcxy.com/p/90321.html

上一篇: Rules for the contentInset of a UITableView in iOS 7?

下一篇: UIToolbar animate alpha ios7