2011-01-15 50 views
0

我正在研究一個應用程序,嘗試瞭解更多關於可可觸摸框架的知識,並開始使用UISplitViewController。從我迄今爲止所瞭解的情況來看,這有一個名爲viewControllers的屬性,它是一個包含應用程序的主視圖控制器和詳細視圖控制器的數組。更改UISplitViewController上的詳細信息窗格的視圖

我想要設置的是masterVC中的文件夾導航系統,然後當選擇了特定文件時,它將在detailVC中打開。我有文件夾導航工作,並可以傳遞兩個視圖控制器之間的文件的詳細信息。

我的問題是,有幾種類型的文件需要不同的視圖才能正確顯示它們。

例如,一個jpeg圖像將有一個圖像查看器,而一個html文檔將有一個web視圖,一個txt文檔將需要一個文本編輯器視圖。

什麼是更改詳細信息窗格的視圖控制器的最佳方法?

我最好有一個單一的視圖控制器,並根據文件類型交換不同的視圖進出?或者有沒有辦法徹底刪除viewcontroller並在其位置添加適當的一個?

謝謝

回答

3

我想你應該使用多個視圖控制器。在你提到的每個視圖控制器中都必須有很多邏輯,它們應該被恰當地包含在它自己的視圖控制器中。

至於顯示適當的視圖控制器,您可以通過執行:[self.view addSubview:myTextEditorVC.view]輕鬆地將viewview添加到任何UIViewController的視圖中。所以換句話說,你的detailVC可以處理知道它需要顯示哪種類型的UIViewController的邏輯,實例化該UIViewController,並在detailVC的內顯示其view

希望這會有所幫助!

+0

感謝donkim,背後有現在這樣的邏輯更好地把握。優秀的答案。 – Jack

0

你應該換出不同的視圖控制器。在Xcode 6中,您可以使用主窗口中的「Show Detail」segue指向包含不同詳細視圖的不同導航控制器。

Here's an quick example.

相關問題