2017-03-09 65 views
1

我想要在我的應用程序的每個頁面中都有一個標籤欄。我將應用程序的主要4個部分(選項卡上的部分)分成4個不同的故事板。我現在想要以編程方式製作標籤欄,並在每次點擊時加載一個新的故事板。如何以編程方式製作呈現新故事板的標籤欄?

我已經做了類似這樣的教程: http://swiftdeveloperblog.com/code-examples/create-uitabbarcontroller-programmatically/

但是現在不知道怎麼把它轉換成裝載了新的故事板,而不是僅僅視圖控制器?


雖然這是我的主要問題,我也想知道這是否值得。我之所以這樣做是爲了將故事板分開,因爲我仍然想使用故事板,但我不想讓一個巨大的故事板接管。但我可以這麼做。

我也不知道內存是否明智,這是不是很好,因爲每次全新的故事板將被加載時,點擊欄中的標籤會減慢速度?

+0

你的故事板有多大? –

+0

4節,每節3-4個ViewControllers –

回答

2

創建UIStoryboard和實例化初始視圖控制器:

UIStoryboard(name: "TabOneStoryboard", bundle: nil) 
    .instantiateInitialViewController() as! TabOneViewController 

如果你不希望實例的初始視圖控制器然後通過ID創建它:

UIStoryboard(name: "TabOneStoryboard", bundle: nil) 
    .instantiateViewController(withIdentifier: "TabOneViewControllerID") as! TabOneViewController 

記住設置故事板屬性檢查器中的初始視圖控制器:Attribute inspector

我覺得這是一個非常實用的方法減少故事板的大小。在構建視圖控制器之後,它們應該緩存在UITabBarController中。不要擔心故事板加載的性能,除非你看到某些事情變得緩慢。清理和這些事情的表現,蘋果是相當不錯的。

本帖地址,這個問題有點:Multiple storyboards: should I use a singleton pattern to cache them?

1
  1. 創建你現在的故事板 enter image description here

  2. 現在,在您的故事板參考集的詳細信息在這裏 enter image description here

  3. 故事板參考現在將此故事板參考嵌入到標籤欄

相關問題