我有一个UITableView
,它有一个UISearchBar
子视图。 这些都在UIViewController
的视图上,还有一些其他的子视图(标签,文本字段等)。
搜索栏和表格的内容偏移行为非常奇怪,但似乎取决于这些视图在xib中添加到主视图的顺序。 我创建了一个只包含我的表格/搜索和一个标签的样本项目进行测试,结果相同。 当表格在标签之后添加时,一切正常:
设置:
正确和预期的结果:
然而,如果我只是改变我的两个子视图在主视图上的顺序(即在标签之前添加表格),那么奇怪的事情就开始发生了。
显然不良设置:
搜索栏的奇怪偏移:
我没有做任何其他更改,那么为什么Xcode似乎会关心这些子视图添加到主视图的顺序? 如果在“不良”表格设置上向上滚动,搜索栏会立即消失在其顶部边缘,但表格的内容将继续向上滚动,直到达到在xib中设置的框架的顶部。 向下滚动,搜索栏直到降低位置才重新出现。 这是在Xcode 5.1.1中,而不是新的beta版本中。 无论是否打开自动布局,结果都相同。
您有没有想过为什么会发生这种情况?这是一个 bug 吗,还是我漏掉了什么?(我没有发布任何代码,因为我所做的只是设置节、行的数量并在单元格上设置文本。不涉及内容插图、偏移量等。我从应用程序委托中加载视图作为导航控制器的根)