2016-02-16 22 views

回答

0

更新答案:

讓我們假設你有一個ID爲「frameworkStoryboard」故事板和ID爲「登陸」視圖控制器的框架稱爲myLogin。 你會

import myLogin 

加載您的框架,然後把你的代碼

let storyBoard = NSStoryboard(name: "frameworkStoryboard", bundle: nil) as NSStoryboard 
    let loginViewController = storyBoard.instantiateControllerWithIdentifier("login") as! NSViewController 
    view.window?.contentViewController = loginViewController 

加載你的故事板和相應的視圖。

基本上,你可以使用變量名稱(故事板和控制器),而不是隻寫下來。 這個例子是針對osx的,iOS的唯一區別是使用UIViewController而不是NSViewController,故事板也一樣,你也不會在iOS上以相同的方式呈現控制器(這個例子將切換當前的Windows內容視圖,而不是呈現它。

+0

代碼去哪裏?目前,我在主要故事板和視圖控制器加載的代碼中沒有看到任何地方。 這樣做的原因是什麼?我有10個應用程序都具有相同的行爲相同的主屏幕。將這些代碼放在框架中是很好的,這樣任何變化都會影響到一些項目。否則,我將不得不在所有10個項目中進行相同的更改。 感謝您的回覆。 – JohnMoll

+0

只要你願意,就會去。 裝載主要故事板是什麼意思?這不是一個觀點。 如果他們具有完全相同的屏幕並且具有相同的行爲,那麼您不想將事情放在主要故事板中,但是您想要的是使用自己的故事板創建一個協議(實際上是一個委託),語法將是相同的,只是名稱會改變。 –

+0

如果項目中有許多Story板和ViewController,如何指定應用程序啓動時載入哪些內容? – JohnMoll

0

我相信你早已解決您的問題,但如果在這裏張貼的答案是別人穿過它的到來,從谷歌有用。

您可以指定另一個故事板爲主要故事板通過從導航器中選擇您的項目,從左側面板中選擇應用目標並進入「信息」選項卡。有一個設置「主要故事板基礎文件名」。

對於您的特定問題,這可能不是你想要的。相反,打開應用程序的Main.storyboard,突出顯示視圖控制器,打開Identity Inspector,並將類設置爲框架中的類。爲了讓這個工作適用於我的項目,我實際上必須刪除現有的Main.storyboard,創建一個新的,放下一個View Controller,並且首先從Attributes Inspector中設置「Is Initial View Controller」。

相關問題