![](/img/trans.png)
[英]Using Interface Builder and storyboards to build relationships between controllers
[英]What is the relationship between Storyboards and the Interface Builder?
我剛開始學習 XCode、objective-c、iOS 等等。 這是我第一次涉足應用程序開發。 我不是開發新手,只是 iOS 開發和 XCode。
因此,我正在學習 Udemy 課程,該課程讓我使用情節提要,我有些擔心,因為我認識的每個專業 iOS 開發人員都使用一種稱為 Interface Builder 的東西,這顯然消除了對情節提要的需要。
我才剛剛開始,所以對於 storyboard 到底是什么,我仍然只有一個粗略的概念……它似乎只是單個頁面視圖的圖形表示。 我不知道它與這個所謂的Interface Builder有什么關系,它們之間的關系是什么。
通過使用故事板學習本課程,我是否走錯了路? 或者這是過渡到 Interface Builder 之前有用的開始步驟嗎? 使用故事板會幫助我以后處理它嗎? 我在浪費時間嗎?
Interface Builder
是Xcode的一部分,可讓您查看和編輯情節提要和.xib文件(單擊此類文件時它會自動打開)。
.xib(或“ nib”)文件表示應用程序中的單個邏輯視圖(在iOS上,通常是具有多個視圖的UIViewController
,例如UIScrollView
和UINavigationBar
)。
故事板是這些視圖的集合,並且可以用於建立從視圖到其他視圖的過渡。
我建議閱讀故事板上的Apple文檔 ,以了解它們可以為您做什么。
...
Interface Builder顯然消除了對故事板的需求。
...
實際上, 情節提要是Interface Builder中的一個概念。
它是整個應用程序流程的直觀表示。
我認為您所需要的只是快速閱讀Apple Interface Builder文檔 。
在基本的理解上,IB是一個拖放區域,以可視方式創建您的視圖。
報價:
您可以在Interface Builder中創建應用程序的用戶界面。 在項目導航器中選擇一個用戶界面文件,然后在工作區窗口的編輯器區域的Interface Builder中打開該文件的內容。 用戶界面文件的文件擴展名為.storyboard或.xib。
邏輯示例:無需以編程方式編碼UIButton
並設置其框架或約束,而是轉到Interface Builder,選擇一個UIButton
對象,然后將其放置在想要的位置。 您還將指定對象名稱及其響應的方法。 ( 但這將需要在與視圖關聯的相應類的.m或.h文件中定義對象名稱和方法名稱 )
Interface Builder可以是XIB / nib或Storyboard。 后一種方法是Apple提供的最新方法( 推薦方法)。
使用情節.storyboard
,您只有一個文件,即.storyboard
文件,它將代表整個應用程序流程。
一個應用程序可以具有多個屏幕/視圖,因此一個故事板將基本上代表多個UIViewController
,每個UIViewController
都將綁定到一個特定的類。
例如,在此故事板中,您可以直觀地看到( 從此處開始的假設 )整個應用中有5個屏幕:
UINavigationController
開頭 UINavigationController
的根視圖,例如LoginVC
(綁定到LoginVC.m
和LoginVC.h
) 。
LoginVC
上的一個按鈕將帶您進入SignUpVC
(與SignUpVC.m
和SignUpVC.h
) LoginVC
上的另一個按鈕將帶您進入ProfileVC
(與ProfileVC.m
和ProfileVC.h
) SignUpVC
LoginVC
ProfileVC
SettingsVC
(與SettingsVC.m
和SettingsVC.h
綁定) LoginVC
SettingsVC
Q.
通過使用情節提要學習本課程,我是否走錯了軌道?
一種。
不,絕對不是。 您朝着正確的方向前進。
但是,我認為了解以前的XIB / nib方法也值得您花時間。
另外,強烈建議以編程方式創建UIView
。
Q.
...這是過渡到Interface Builder之前有用的開始步驟嗎?
一種。
它已經使您熟悉Interface Builder,因此實際上並不需要太多的“轉換”。
Q.
使用情節提要板可以幫助我以后使用它嗎? 我在浪費時間嗎?
一種。
是的,除非您在版本控制下的團隊中工作,在這種情況下,XIB仍然看起來不錯。
它仍然在Interface Builder范圍內...
將情節提要分解為單獨的視圖,您將擁有多個文件( .xib
文件 ),它們代表一個類的UIView
或UIViewController
。 ( 因此,在版本控制下的團隊中工作時會有所幫助 )
因此,現在……而不是只有一個.storyboard
,您將擁有多個.xib
文件,這些文件將與( 您認為 )需要直觀表示的所有這些類相關聯。
鏈接:
Storyboard:有一個很好的 UI 設計器,所見即所得,拖動,調整大小的設計編輯器,生成代碼並與手動代碼更改同步。
SwiftUI:代碼是唯一的真實來源。 沒有設計師。 大量的硬編碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.