Xcode を使用すると、ライブ プレビューを行うことができますiOSXcode プレビューを使用してビューを表示できるため、実際に開発しているときにアプリがどのように表示されるかを確認できます。それらの使用方法は次のとおりです。

Xcode は、Apple プラットフォーム用のアプリを構築するための Apple の開発環境です。一つの特徴は、Xcodeプレビュー- プログラミング中に作業しているアプリビューのライブビュー。

この記事では、iOS または Xcode のプレビューを使用する方法を見ていきます。iPadOSアプリ。

はじめる

Xcode iOS アプリを起動するには、Xcode を開き、Xcode のアプリから起動します。ファイルメニュー、選択新しいプロジェクト

これにより、新しいプロジェクト セレクターが開きます。

Xcode のプロジェクト選択ツール。

プロジェクト セレクターで、次を選択します。iOS一番上に、アプリ「アプリケーション」の下にあるボタン。

次のペインで、名前、チーム、組織識別子、ユーザー インターフェイスの SwiftUI などのプロジェクト オプションを設定します。必要に応じて、ストレージやテストなどの他のオプション機能の使用を選択することもできます。

プロジェクトのオプションを設定します。

AppKit ベースの iOS プロジェクトで Xcode プレビューを使用することは可能ですが、そのためにはすべての UI ビューをプログラムで作成する必要があります。これにより、Xcode エディターでコードを選択できるようになり、Xcode がそれらのビューのプレビューを生成できるようになります。

をクリックします。ボタンをもう一度押して名前を入力し、[保存]パネルでディスク上のプロジェクトの場所を選択します。

コンテンツ アセットとキャンバスをプレビューする

Xcode プロジェクトが開くと、プロジェクト エディターの左側に「Preview Content」という名前のフォルダーが表示されます。そのフォルダー内には、「Preview Assets.xcassets」という名前のアセット カタログ ファイルがあります。

Xcode はデフォルトでこのフォルダーとファイルを作成します。これを使用して、Xcode プレビューに表示する必要があるアセットを保存できます。

このカタログにアセットを追加および削除するには、左側の Xcode エディターの上部でプロジェクト (青いアイコン) を選択し、その右側でターゲットを選択して、「開発アセット」まで下にスクロールします。の底一般的なプロジェクトペイン:

プレビューコンテンツフォルダー。

iOS プロジェクトを作成すると、XCode はデフォルトで左側のプロジェクト エディターに「ContentView.swift」という名前の 1 つのコンテンツ ビュー SwiftUI ファイルを作成します。そのファイルを選択し、ContentView クラスのコード内のサブビューの 1 つを選択すると、Xcode エディターの右側にそのプレビューが表示されます。

Xcode を初めて実行したときにプレビューがすぐに表示されない場合は、プレビューが生成されるまで数分かかります。 Xcode の右側にプレビュー ペインが表示されない場合は、エディター -> キャンバスXcodeのメニューバーから。

エディターメニューからキャンバスを表示します。

SwiftUI ビュー クラスでサブビューを選択すると、そのプレビューが右側のプレビュー ペインに表示されます。左側のコードで他のサブビューを選択すると、プレビューの内容を変更できます。逆に、プレビュー ウィンドウで項目を選択すると、Xcode テキスト エディターでそのコードがハイライト表示されます。

コントロール

Xcode プレビュー ペインの下部には、いくつかのコントロールがあります。右側には、虫眼鏡アイコンでマークされたプレビュー ペイン自体をズームインおよびズームアウトできるズーム コントロールがあります。

Xcode プレビュー コントロール。

中央にはポップアップ メニューがあり、プレビュー ペインで使用するデバイス モデルを選択できます。その左側には、キャンバスの色、方向、フォント サイズを設定できる環境設定コントロールがあります。

プレビュー ペインの左側にある 3 つのボタンを使用すると、プレビューを一時停止および再開したり、サブビュー選択可能モードに切り替えたり、配色、方向、および動的タイプのバリアントを設定したりできます。

プレビュー パンの左上隅には画鋲アイコンが付いたボタンがあり、プレビュー ペインの内容を固定または固定できるため、コード エディターで何を選択しても内容は変わりません。

プレビュープロバイダー

プレビュー コンテンツの表示方法をカスタマイズしたい場合は、プレビュー プロバイダー プロトコルを実装できます。迅速これを使用して、データを変更したり Xcode に提供したりできます。 Swift クラスまたは構造体がプレビュー プロバイダーに準拠している場合、Xcode がプレビューを生成するときにプロバイダーが呼び出されます。

プレビュー プロバイダーは Xcode 内でのみ使用され、アプリが実際に構築されて実行されるときには使用されません。たとえば、Xcode のドキュメントから:

struct CircleImage_Previews: PreviewProvider {

static var previews: some View {

CircleImage()

}

}

を使用することもできます。Groupプレビュー プロバイダー内のキーワードを使用して、多くのプレビューを定義し、実行時にどれを返すかを決定します。

#マクロのプレビュー

iOS 13 以降をターゲットにしている場合は、プレビュー プロバイダーを使用する代わりに、コード内で #Preview マクロを使用して Xcode プレビューを定義できます。

これを行うには、まず Swift を定義します。Viewとしてサブクラス化struct:

struct ContentView: View {

var body: some View {

// ...

}

}

そして、その下でそのビューを定義します。#Previewマクロ:

#Preview {

ContentView()

}

Swift および C ベースの言語では、マクロは、プリコンパイル時にマクロ定義の一部が値に置き換えられる長いステートメントに展開されるコンパイラ フラグです。

の場合、#Previewマクロの場合、コンパイラはそれを「Preview(_:body:)」に展開します。これはオプションの名前とViewBuilderbodyパラメータで。

ViewBuilderは、クロージャからビューを構築するパラメータ属性です (クロージャはコード コールバック ルーチンの一種です)。スイフトでは、ViewBuilderによって定義されます@ViewBuilderキーワード:

func contextMenu(

@ViewBuilder menuItems: () -> MenuItems

) -> some View

同じソース コード ファイル内で複数のプレビューを定義する場合は、#Previewマクロでは、文字列を渡すことでそれぞれに名前を付けることができます。

#Preview("Input true") {

ContentView(someInput: true)

}

Apple は、さまざまな目的のために追加のプレビュー マクロも提供しています。を参照してください。プレビュードキュメント詳細については Apple からお問い合わせください。

Appleは期間中にセッションを開催したWWDCXcode プレビューに関する '23 開発者カンファレンスXcode プレビューを使用してプログラムによる UI を構築する

プレビューは、iOS シミュレーターで実際にコードをコンパイルして実行する必要がなく、SwiftUI コードが実行時にどのように見えるかを確認するための迅速で便利な方法です。これにより開発が高速化され、コード変更ごとに必要なコンパイル→ビルド→実行サイクルの数が減少します。

Xcode のプレビューのコツを掴めば、毎日プレビューを使用できるようになります。