我有一个带有UITableView
的iPhone故事板,可以使用导航控制器分割到详细视图。我正在尝试在主 - 细节UI中重用同一个应用程序的iPad版本中的类。
以下是我的故事板如何看待我正在做的事情:
我希望尽可能多地重用代码,到目前为止,我已经成功地将PPAircraftViewController
类重用于aircraftTableView
。
问题:由于iPad应用已使用PPAircraftViewController
来保存表格和详细信息视图,因此如何重复使用PPAircraftDetailViewController
类及其所有代码{{1 }} S'
Xcode 5,面向iOS 6& 7,UISplitViewController不是一个选项,因为所有这些都嵌入在父导航控制器中。
答案 0 :(得分:1)
我终于找到了我想要的东西。我无法相信我花了这么长时间才能记住它,但这个场景的完美解决方案是UIContainerView
。
它允许我将PPAircraftDetailViewController
嵌入其包含的视图控制器中,如下图所示。
谢谢大家!
答案 1 :(得分:0)
在iPhone上,PPAircraftDetailViewController
将PPAircraftViewController
推到导航堆栈上。
这使得用户可以看到其中一个。
在iPad上,Apple提供了一种机制,可以在UISplitViewController
中并排显示MasterView和DetailView。
在这种情况下,MasterViewController不会“推送”DetailViewController,而是通过IBOutlets和Delegation激活它。
您可以将PPAircraftViewController
作为(部分)MasterViewController,将PPAircraftDetailViewer
作为(部分)DetailViewController。
这将需要一些调整,但也将节省您的大量精力,因为调整和旋转将由SplitViewController完成。