Xcode は、Apple プラットフォーム用のアプリを構築するための Apple の開発環境です。一つの特徴は、Xcode

プレビュー- プログラミング中に作業しているアプリビューのライブビュー。この記事では、iOS または Xcode のプレビューを使用する方法を見ていきます。iPadOS

アプリ。はじめるXcode iOS アプリを起動するには、Xcode を開き、Xcode のアプリから起動します。

ファイル

メニュー、選択新しいプロジェクトこれにより、新しいプロジェクト セレクターが開きます。プロジェクト セレクターで、次を選択します。

iOS

Xcode's project chooser.

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

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

Set project options.

AppKit ベースの iOS プロジェクトで Xcode プレビューを使用することは可能ですが、そのためにはすべての UI ビューをプログラムで作成する必要があります。

これにより、Xcode エディターでコードを選択できるようになり、Xcode がそれらのビューのプレビューを生成できるようになります。

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

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

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

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

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

The Preview Content folder.

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

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

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

Show the Canvas from the Editor menu.

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

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

コントロール

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

Xcode Preview controls.

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

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

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

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

プレビュープロバイダー

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

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

struct CircleImage_Previews: PreviewProvider {

静的変数プレビュー: いくつかの View {

CircleImage()

}}

を使用することもできます。

グループプレビュー プロバイダー内のキーワードを使用して、多くのプレビューを定義し、実行時にどれを返すかを決定します。#マクロのプレビュー

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

これを行うには、まず Swift を定義します。

ビューとしてサブクラス化構造体:struct ContentView: ビュー {

var body: いくつかのビュー {

// ...

}

}

そして、その下でそのビューを定義します。

#プレビューマクロ:#プレビュー {

ContentView()

}

Swift および C ベースの言語では、

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

#プレビューマクロを使用すると、コンパイラはそれを「Preview(_:body:)」に展開します。これはオプションの名前とビュービルダーbodyパラメータで。

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

func contextMenu(

@ViewBuilder menuItems: () -> MenuItems

) -> 一部のビュー

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

#Preview("入力 true") {

ContentView(someInput: true)

}

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

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

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

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