[Xamarin.Mac] コードからView Controllerを表示する

これまでの記事ではAction Segueを使用して他のView Controllerを表示する方法を見てきました。

今回は、コードを記述してメインのビューから他のビューを表示する方法を見ていきます。

1.事前準備

はじめに新規でプロジェクトを作成して、メインウィンドウにButtonを1つ貼り付けます。

2.サブウィンドウの追加とセグエの設定

続いて新規でView Controllerを1つ追加します。View Controllerを追加したら、既存のView Controllerを追加したView Controllerにドラッグ&ドロップしてセグエを作成します(下図参照)。

続いてManual Segueのダイアログが表示されるので、今回はModalを指定することとします。

次に、セグエを選択して名前(Identifier)を「mySegue」としてください。あとでこの名前を使用して、コードからサブウィンドウを開けるようにします。

3.アクション接続の作成

続いてメインウィンドウに配置した[Show sub view]のアクション接続を作成します。アクション名は「showSubView」としてください。

アクション接続の作成方法については「シンプルなアプリを作ってみよう 〜アクションとアウトレット〜」を参照ください。

ここまでできたら、[command]+[s]で保存をして、Visual Studioへ戻ります。

4.コードからView Controllerを表示する

ViewController.csを開いて以下のコードを追加してください。このメソッドは、先ほど作成したアクションになります。

PerformSegueというメソッドは、セグエを起動するためのメソッドで、第1引数にセグエの名称を、第2引数にはthisを渡します。引数に渡したMySegueは2つ目のView ControllerをModalで開くようにしたので、[Show sub view]ボタンがクリックされると2つめのView Controllerが表示されます。

partial void showSubView(NSObject sender)
{
    PerformSegue("MySegue", this);
}

以上で完成です。実際に実行して動作を確認してください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です