【发布时间】:2010-10-15 08:05:44
【问题描述】:
我有一个 UINavigationController 控制 UIViewControllers 堆栈。当我将某个 UITableViewController 压入堆栈时,我发现其 UITableView 的顶行隐藏在 UINavigationBar 后面。
这个问题只发生在 iPad 上,而不是 iPhone。我在两者上都使用相同的堆栈。
而且它只发生在我的一个控制器堆栈上。我在另外两个 UINavigationController 控制的栈上 push 同一个 UITableViewController 子类,没有问题。
问题案例的一个区别是 UITableViewController 是从 UIViewController 推送的,该 UIViewController 显示由 UISearchDisplayController 生成的结果表。我不明白为什么这很重要(而且,正如我所说,在 iPhone 上它可以正常工作),但考虑到 UISearchDisplayController 在 UISearchBar 成为第一响应者时隐藏导航栏,这可能很重要。
该问题同时影响 iPad 设备和 iPad 模拟器。我正在使用典型的 UISplitViewController 设计,这些堆栈位于左侧窗格中。在竖屏时,弹出框仍然会出现问题。
【问题讨论】: