2014-12-05 38 views
0

之間根視圖控制器的差異,因爲出於某種原因,rootViewController我的應用程序是在iOS7崩潰是UINavigationController而不是UISplitViewController。所以該應用程序崩潰的第一行let splitViewController = self.window!.rootViewController as UISplitViewControllerAppDelegate。有沒有像這樣的解決方法或解決方法?它工作正常在iOS8iOS7和iOS8上

+0

什麼設備(物理或模擬)你是否只是好奇地測試這個應用程序? – 2014-12-05 21:34:17

+0

它出現在7.1.2上的iPhone 4S上,我在運行7.1的模擬器上嘗試調試它。 – gta0004 2014-12-05 21:36:14

回答

1

好吧,所以問題是UISplitViewController只用於iPad,而不是iPhone。所以請確保您的項目下的目標設置爲只有當您需要擁有UISplitViewController才能使用iPad。如果您想要支持這兩種設備,我建議您檢查一下您的應用當前在啓動時是否運行以及兩個故事板之間交替使用的設備慣用語(如果這樣做確保您的目標適用於通用設備而不僅僅是iPad)。 < ---這涵蓋iOS 7的支持,以及應用程序不會在iOS 8上崩潰的原因是因爲UISplitViewController現在允許在iOS 7中的iPhone上不允許使用iOS設備。

+0

那麼爲什麼它在iOS8和iPad上都可以正常運行? – gta0004 2014-12-05 21:41:47

+0

這是來自UISplitViewController類引用的引用。 「在iOS 8及更高版本中,您可以在所有iOS設備上使用UISplitViewController類;在以前的iOS版本中,該類僅在iPad上可用。」所以我會在提前執行另一個故事板之前檢查iOS版本,看看它是否需要切換。 – 2014-12-05 21:42:33

+0

它是否像一個巨大的解決方法,以支持ios7,如果它是用分割視圖控制器進行編碼? – gta0004 2014-12-05 21:56:07

相關問題