第 13 章
導覽控制器與 Segue

Just build something that you'd want to use today, not something you think people would use somehow.

– Paul Graham

首先要了解何謂導覽控制器(Navigation Controller )?和表格視圖一樣,導覽控制器是另一個開發 iOS App 經常用到的 UI 元件。它為階層式內容提供進一步的介面,如內建的照片 App、YouTube 以及聯絡人,它們都是使用導覽控制器來呈現階層式的內容,通常你可交互運用表格視圖控制器和導覽控制器來打造出具有質感的介面,但是這並不表示你一定要兩個同時使用。導覽控制器可以和任何型態的視圖控制器一起運用。

Storyboard中的場景及 Segue

到目前為止,我們只是在 FoodPin App 的 Storyboard 中佈局視圖控制器。Storyboard 能做的事情不止如此而已,你可以在 Storyboard 中加入更多的視圖控制器,然後互相串連,並定義這些控制器間的轉場(transition ),這些都不需要撰寫一行程式碼。使用Storyboard 時,「場景」(Scene )與「Segue」是兩個你必須要知道的名詞。在 Storyboard 中,一個場景對應一個在畫面上的內容(如一個視圖控制器),Segue 則是位於兩個場景之間,表示從一個場景轉場至另一個場景。而「推送」(Push )與「強制回應」(Modal) 是兩個常見的轉場型態。

Note: 你可以使用「Storyboard Reference」這個功能,來讓 Storyboard 更加容易管理與模組化。當你的專案變得更大且複雜時,你可以將一個大的 Storyboard 分成多個 Storyboard,並使用Storyboard Reference 來串連。這個功能在你和你的團隊成員共同協作時特別有用。

建立導覽控制器

我們將嵌入一個表格視圖控制器至導覽控制器中,來繼續進行 FoodPin App 的專案,如圖 13.1 所示。當使用者選擇任何一間餐廳,App 會導覽到下一個顯示餐廳細節內容的畫面。

圖 13.1. 深色模式下加上一個導覽列的FoodPin App
圖 13.1. 深色模式下加上一個導覽列的FoodPin App

本文摘自《iOS 17 App程式設計實戰心法》(Swift+UIKit)》一書。如果你想更深入學習Swift程式設計和下載完整程式碼,你可以從 AppCoda網站 購買完整電子版

results matching ""

    No results matching ""