我在这里看到了很多关于将 a 添加UINavigationBar
到UIPopoverController
. 我见过的所有示例都遵循以下两种模式之一:
在Popover 子类的
init
or方法中,您直接 alloc-init a ,如建议here。这个方法有点笨拙,虽然它显示得很好,但如果弹出框是 UITableViewController,你必须弄乱一堆东西来确保你刚刚添加的导航栏不会与你的一个单元格重叠。viewDidLoad
UINavigationBar
或者,很多帖子建议
UINavigationController
在显示弹出框之前创建一个,如下所示。
然而,使用第二种方法,弹出框不是新创建的导航控制器中唯一的控制器吗?如果我正在从中呈现弹出框的视图本身已经在导航控制器中,那么弹出框将不会在同一个导航控制器中,对吗?似乎更合适的做法是将正在创建的弹出框添加为导航控制器中已经存在的另一个控制器(并且呈现弹出框的控制器已经是其中的一部分)。那可能吗?或者是否有原因为什么弹出框的导航控制器需要独立于呈现控制器的导航控制器?或者我在这里完全错过了什么?