我使用Master-Detail故事板创建了一个有效的应用程序,然后决定在表格视图页面之前将搜索移动到新页面。
Storyboard http://www.photoandgem.com/storyboard.jpg
问题的一部分是结构之一:
我是否应该有一个嵌入搜索视图控制器的新导航控制器?
或者搜索视图控制器是否应嵌入原始(表格视图)导航控制器中?
或其他一些结构?
按原样,我将搜索视图控制器设置为初始视图控制器,但AppDelegate.swift中的代码不正确,因此出现错误
“无法将'searcher.searchViewController'类型的值(0x10bd12dc8)转换为'UISplitViewController'。”
我知道它应该包含搜索视图控制器,但我不知道如何解决这个问题。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
let splitViewController = self.window!.rootViewController as! UISplitViewController
let navigationController = splitViewController.viewControllers[splitViewController.viewControllers.count-1] as! UINavigationController
navigationController.topViewController!.navigationItem.leftBarButtonItem = splitViewController.displayModeButtonItem
splitViewController.delegate = self
return true
}
我阅读了所有的Apple文档,几个教程,以及stackoverflow上的无数问题/答案,没有新的搜索视图控制器,我对Master-Detail结构没有任何问题,但我还不清楚继续。
答案 0 :(得分:0)
在表视图导航控制器之前,没有推荐的结构用于添加快速视图控制器。如iOS: UISplitViewController cannot be pushed to UINavigationController中所述,无法完成。
我正在开发一个不同的解决方案,其搜索页面是主视图的子视图。