Xamarin.Mac 中的分鏡腳本簡介

本文提供在 Xamarin.Mac 應用程式中使用分鏡腳本的簡介。 其中涵蓋使用分鏡腳本和 Xcode 的 Interface Builder 建立與維護應用程式的 UI。

分鏡腳本可讓您開發 Xamarin.Mac 應用程式的使用者介面,不僅包含視窗定義和控件,還包含不同視窗(透過 segues)和檢視狀態之間的連結。

Xcode 中的範例 UI

本文將介紹如何使用分鏡腳本來定義 Xamarin.Mac 應用程式的使用者介面。

什麼是分鏡腳本?

藉由使用分鏡腳本,所有 Xamarin.Mac 應用程式的 UI 都可以在單一位置定義,並在其個別元素和使用者介面之間進行所有導覽。 適用於 Xamarin.Mac 的分鏡腳本,其運作方式與 Xamarin.iOS 的分鏡腳本非常類似。 不過,它們包含一組 不同的 Segue 類型 ,因為不同的介面慣用語。

使用場景

如上所述,Storyboard 會定義指定應用程式的所有 UI 細分成其 檢視控制器的功能概觀。 在 Xcode 的介面產生器中,每個控制器都位於自己的 場景中

檢視控制器範例

每個場景都代表指定的檢視和檢視控制器配對,其中包含一組連接 UI 中每個場景的行(稱為 Segues),從而顯示其關聯性。 某些 Segue 會定義一個檢視控制器如何包含一或多個子檢視或檢視控制器。 其他 Segue,定義檢視控制器之間的轉換(例如顯示快顯或對話框)。

範例 segue

要注意的最重要事項是,每個 Segue 都代表應用程式 UI 指定元素之間某種形式的數據流程。

使用檢視控制器

檢視控制器會定義 Mac 應用程式內指定資訊檢視與提供該資訊的數據模型之間的關聯性。 分鏡腳本中的每個最上層場景都代表 Xamarin.Mac 應用程式程式代碼中的一個檢視控制器。

範例滑落檢視控制器

如此一來,每個檢視控制器都是一個獨立且可重複使用的配對資訊視覺表示法(檢視),以及呈現和控制該信息的邏輯。

在指定的場景中,您可以執行一般由個別 .xib 檔案處理的所有工作:

  • 放置子檢視和控件(例如按鈕和文字框)。
  • 定義專案位置和自動配置條件約束。
  • 連接動作和輸出,以將UI元素公開給程式代碼。

使用 Segues

如上所述,Segues 提供定義應用程式 UI 之所有場景之間的關聯性。 如果您熟悉在 iOS 的分鏡腳本中工作,您知道 iOS 的 Segues 通常會定義全螢幕檢視之間的轉換。 這與macOS不同,當Segues通常定義「內含專案」時(其中一個場景是父場景的子系)。

在 macOS 中,大部分的應用程式通常會使用分割檢視和索引標籤等 UI 元素,將其檢視群組在相同的視窗中。 不同於 iOS,因為實體顯示空間有限,因此檢視必須在畫面上和關閉畫面上轉換。

鑒於macOS的內含傾向,在某些情況下 會使用簡報Segue ,例如強制回應 Windows、工作表檢視和Popovers。

使用 Presentation Segues 時,您可以覆寫 PrepareForSegue 父檢視控制器的 方法來初始化和變數,並將任何數據提供給所呈現的檢視控制器。

設計和運行時間

在設計時間(在 Xcode 的 Interface Builder 中配置 UI 時),應用程式 UI 的每個元素都會細分成其組成專案:

  • 場景 - 由下列項目組成:
    • 檢視控制器 - 定義檢視與支援它們之數據之間的關聯性。
    • 檢視和子檢視 - 構成使用者介面的實際元素。
    • 內含專案 Segues - 定義 Scenes 之間的父子關聯性。
  • 簡報 Segues - 定義個別簡報模式。

藉由以這種方式定義每個元素,它只允許在運行時間期間所需的每個元素延遲載入。 在macOS中,整個程式的設計目的是讓開發人員能夠建立複雜且靈活的使用者介面,需要最少支援程式代碼才能使其運作,同時盡可能有效率地使用系統資源。

分鏡腳本快速入門

分鏡腳本快速入門 指南中,我們將建立簡單的 Xamarin.Mac 應用程式,以介紹使用分鏡腳本來建立使用者介面的重要概念。 範例應用程式將包含包含內容區域和偵測器區域的 Spilt 檢視,且會顯示簡單的 [喜好設定對話框] 視窗。 我們將使用 Segues 將所有使用者介面元素系結在一起。

使用 Storyboards

本節涵蓋在 Xamarin.Mac 應用程式中使用分鏡腳本深入詳細數據。 我們深入探討場景,以及它們如何由檢視控制器和檢視組成。 然後,我們將看看場景如何與 Segues 系結在一起。 最後,我們將探討使用自定義 Segue 類型。

摘要

本文已快速探討在 Xamarin.Mac 應用程式中使用分鏡腳本。 我們已瞭解如何使用分鏡腳本建立新的應用程式,以及如何定義使用者介面。 我們也瞭解如何使用 segue 在不同的視窗和檢視狀態之間巡覽。