XCode 12.4 日本語化計画:Swift Tutorials
UIKit とのインターフェース
セクション 4
今や、SwiftUIUIViewRepresentable ビューに包み込まれたカスタム UIPageControl をビューに追加する準備が整いました。
ステップ 1
PageControl.swift という名前の新しい SwiftUI ビューファイルを作成します。UIViewRepresentable プロトコルに準拠するように PageControl の型を更新します。
UIViewRepresentable の型と UIViewControllerRepresentable の型の寿命は同じで、メソッドは基になる UIKit の型に対応しています。
ステップ 2
テキストボックスをページコントロールに置き換え、レイアウトを VStack から ZStack に切り替えます。
ページ数と現在のページへの結束を渡しているため、ページコントロールにはすでに正しい値が表示されています。
次に、ページコントロールをインタラクティブにして、ユーザが片側または反対側をタップしてページ間を移動できるようにします。
ステップ 3
PageControl 内で入れ子にされた Cordinator の型を作成し、makeCoordinator() メソッドを追加して、新しいコーディネータを作成して返します。
UIPageControl のような UIControl サブクラスはデリゲートの代わりにターゲットアクションパターンを使用するため、この Coordinator は @objc メソッドを実装して現在のページの結束を更新します。
ステップ 4
実行するアクションとして updateCurrentPage(sender:)) メソッドを指定して、valueChanged イベントのターゲットとしてコーディネータを追加します。
ステップ 5
最後に、CategoryHome 内で、プレースホルダの特徴のある画像を新しいページビューに置き換えます。
ステップ 6
さあ、さまざまな作用をすべて試してみましょう。PageView は、UIKit と SwiftUI のビューとコントローラがどのように連携するかを示します。
    PageControl.swift
    PageView.swift
    PageControl.swift
    PageControl.swift
    CategoryHome.swift
セクション 1 | セクション 2 |
セクション 4 | セクション 4 |
セクション 101 | セクション 102 |
セクション 103 | セクション 104 |
フレームワーク
UIKit ビューコントローラを SwiftUI にブリッジするためにどのプロトコルを使用しますか?
UIViewRepresentable |
UIHostingController |
UIViewControllerRepresentable |
UIViewControllerRepresentable 型のデリゲートまたはデータソースを作成するのはどのメソッド内ですか?
それはデリゲートまたはデータソースを使用するため、UIViewController を作成するのと同じ makeUIViewController(context:) メソッド内です。 |
UIViewControllerRepresentable 型のイニシャライザ内。 |
makeCoordinator() メソッド内です。 |
このチュートリアルでは、SwiftUI についてすでに学んだことの多くを適用し、わずかな努力で Landmarks アプリを watchOS に移行する機会を提供します。