Xcode を使用したユーザー インターフェイスの設計

Visual Studio 2019 バージョン 16.8 と Visual Studio for Mac バージョン 8.8 以降では、.storyboard および .nib ファイルを編集するための推奨される方法は、Mac の Xcode Interface Builder で編集することです。

Note

Visual Studio 2019 バージョン 16.9 以降では、Windows で iOS ストーリーボードを編集するためのサポートされている方法はありません。 Visual Studio for Mac と Xcode Interface Builder を使用して、Xamarin.iOS ユーザー インターフェイスの構築を続けます。

この記事では、Xcode Interface Builder を使用してユーザー インターフェイスを構築するための一般的なソリューションについて説明します。 この記事は、Xamarin.iOS Designer で UI を以前に編集した場合に特に役立つことがあります。

ストーリーボードの詳細なチュートリアルについては、「Xamarin.iOS のストーリーボード」を参照してください。

ストーリーボードを開く方法

ストーリーボード ファイルを右クリックし、[Xcode Interface Builder] を選択して Visual Studio for Mac で iOS ユーザーインターフェイス ファイルを開きます。

Select Interface Builder

Xcode ウィンドウが開くはずです。 ここに保存されたすべての編集内容は、Visual Studio プロジェクトに反映されます。

Xcode Window

Xcode Interface Builder の詳細については、「組み込み Interface Builder」を参照してください。

新しいコントロールの作成

Xcode Interface Builder を使用して新しいコントロールを作成するには、最初に編集するストーリーボードを選択します。 その後、[Xcode ライブラリ] ダイアログ ([ビュー]>[ライブラリの表示] を) を開き、コントロールをストーリーボードにドラッグします。

Library Picker

次に、対応するビュー コントローラー ヘッダー ファイルを開きます。 空の "単一ビュー" Xamarin.iOS アプリの場合、既定のストーリーボードは Main.storyboard と呼ばれます。 対応するビュー コントローラー ファイルは、Visual Studio では ViewController.cs と呼ばれ、Xcode から表示すると、対応する ViewController.h ヘッダー ファイルが含まれます。

Xcode Interface Builder から、ストーリーボードと対応するビュー コントローラー ヘッダー ファイルの両方を開きます。 Control キー (^) を押したまま、Xcode によってダイアログ ボックスが表示されるまで、ストーリーボードからビュー コントローラー ファイルにコントロールをドラッグします。

Demo Link Control

上に示すように、対応する C# コードはビュー コントローラーの分離コード ファイルに自動的に生成されます。 Xamarin.iOS プロジェクト内でこのコントロールにアクセスできるようになりました。

既存のコントロールの名前の編集

Xcode Interface Builder から既存のコントロールの名前を編集し、その変更を C# プロジェクトに反映するには、適切なビュー コントローラー ヘッダー ファイルに移動して右クリックし、[リファクター] を選択します。

Refactor Control

分離コード ファイルは新しい名前で再生成され、Visual Studio for Mac のコードを介してコントロールにアクセスできます。

既知の問題

このセクションでは、既知の問題について説明します。

"Visual Studio が Xcode と通信できませんでした"

macOS Catalina 以降では、以下のエラーが発生する可能性があります。

cant communicate err

まず、Mac のシステム環境設定の [セキュリティとプライバシー]> [オートメーション] で、Visual Studio が一覧表示され、[Xcode] がオンになっていることを確かめます。

macOS security

[Xcode] がオンになっていても、エラー メッセージが表示される場合は、Visual Studio for Mac のプライバシー アクセス許可のリセットが必要になることがあります。

これを行うには、ターミナル ウィンドウを起動し、次のコマンドを発行します。

sudo tccutil reset All "com.microsoft.visual-studio"

上記の変更を確実に有効にするには、Mac の PRAM をリセットします。 手順については、「Mac で NVRAM または PRAM をリセットする」を参照してください。