Storyboard簡述
storyBoard(故事板)是蘋果在iOS5中引入的新技術,是蘋果一直推薦使用的界面開發方式。在近幾年的 Xcode 更新中可以看出,蘋果對 Storyboard 的開發力度也不斷增強,添加了更多功能和特性,大大方便了界面的開發、適配以及提升代碼性能。
簡單的講,StoryBoard可以看做是一組viewController對應的xib,以及它們之間的轉換方式的集合.在StoryBoard中不僅可以看到每個ViewController的布局樣式,也可以明確地知道各個ViewController之間的轉換關系,這樣條理更清晰。
本篇文章主要講Storyboard Reference的使用,實現在一個工程中使用多個Storyboard開發的功能
進入開發
先看要達到的效果,有目標才有思路
從圖中可以看出,我們將要實現的是一個有TabBar的工程,tabBar有5個item。那么下面開干。
一 、創建項目,用一個StoryBoard管理所有頁面
1.創建一個新項目,給Main.Storyboard中的ViewController添加NavigationController。如下圖
得到效果如下
2.給NavigationController添加TableBar。如下圖
添加后的效果如下
這樣就創建完成了一個完整的item,但是我們要創建5個item。
3.選中StoryBoard中的Navigation Controller 和View Controller,復制,然后粘貼4次。然后將復制出來的4個item的位置擺好(有時候會發現,你復制的4個item看不到,那是因為都重疊在第一個上面了,拖開就可以了)。如下圖
4.從TabBar Controller往Navigation Controller上拖線,在彈出來的選擇框中選view controllers。如下圖
5.全部拖線完成以后,我門將各個ViewController的背景色改一下。如下圖
為了效果好一點,我們給每個Navigation Controller的item放上圖片。如下圖
完事后,一個StoryBoard管理所有界面的項目完成,運行一下。結果如下圖
二 、將項目分解為成一個總的StoryBoard,5個分的StoryBoard
這一步很簡單,主要是用到 Storyboard Reference這個東西。
1.同時選擇第一個item的 Navigation Controller和View Controller,然后在 editor的下拉列表中選擇Refactor to Storyboard。如下圖
然后會彈出保存方式的彈框
設置好文件名字,選擇好保存位置,點擊保存即可。保存完后會生成一個新的StoryBoard文件。如下圖
原來的Main.StoryBoard也會變化。如下圖
2.接下來將剩下的4個item也設置成Refactor to Storyboard。完成以后效果如下圖所示
運行完成后,結果和一個StoryBoard管理所有控制器是一樣的效果。
后記
到此多StoryBoard管理項目的創建方法介紹完畢。這樣就不會存在一個StoryBoard中有大量的控制器,瞬間感覺亂麻被快刀斬。每一個模塊管理一部分功能,而且子模塊還可以分成子模塊,聽起來就感覺很刺激。