本サイトからスピンオフした姉妹サイトです。Studio2014年8月20日Xamarin.iOSでStoryboardにより画面遷移を行う際に、遷移元から遷移先にデータを渡す方法を解説する。→Xamarin.iOSで画面遷移先にデータを渡す方法を解説する。「Tips:Xamarin.iOSで画面遷移を行うには?(Storyboard使用)」の続きとして解説するので、プロジェクトの準備は前回を参照してほしい。1画面を準備する前回終了時点で、MainStoryboard.storyboardファイルを開くと、以下の画面のようになっているはずだ。前回終了時点のStoryboard中央(白)のFirstViewControllerにテキストフィールドを配置し、[Name]をtextCountryとする(図2)。右上(緑)のViewControllerには、渡されたデータを表示するためのラベルを配置し、[Name]をlabelCountryとする。テキストフィールドとラベルを配置したStoryboard2受け取ったデータを表示する右上(緑)のViewControllerは、ソリューション作成時からあるStoryboardSampleViewController.csファイルにマップされているので、これを開いて以下のようにコードを追加する。//<--2}......省略......}受け取ったデータを表示するコードCountryプロパティを用意し(1)、画面がロードされた時にその値をラベルに表示する(2)。Countryプロパティに、FirstViewControllerからデータが設定される想定だ。3画面遷移時にデータを渡す右上(緑)のStoryboardSampleViewControllerへデータを渡すには、FirstViewController.csファイルを以下のように修正する。textCountry.Text;}}}画面遷移時にデータを渡すコード1のPrepareForSegueが今回追加したコードで、画面遷移が行われる前(遷移先のViewControllerが生成された後)で呼び出されるメソッドである。どの画面に遷移するかは、segue.Identifierから取得できるセグエIDで識別できる。右上(緑)へ移動する際のセグエIDは「goto_green」なので、この値で判定を行う(2)。続いて、遷移先のViewControllerはこの時点ですでに生成されており、segue.DestinationViewControllerプロパティで取得できるので(3)、実際のStoryboardSampleViewControllerにキャストして(※C#ではas句を使用するとキャストできない場合は例外でなくnullにできる)、2で用意したStoryboardSampleViewControllerクラスのCountryプロパティへテキストフィールドの値を設定する。4プログラムを実行するここまでのプログラムを実行すると、図3のようになる。入力した文字列が、緑のViewControllerに渡されているのが確認できる。まとめ画面遷移時に呼び出されるPrepareForSegueメソッドをオーバーライドすることで、遷移先のViewControllerにデータを渡す方法を解説した。iOS開発者ならば、ネイティブの画面遷移の方法と全く同じなので違和感はないはずだ。Segue)について解説する予定だ。※以下では、本稿の前後を合わせて5回分(第13回~第17回)のみ表示しています。INDEX]を参照してください。Xamarin.Formsで新しいコントロールを作成するには?Xamarin.Formsでは、既存のコントロールを拡張できるだけでなく、全く新しいコントロールを作成することもできる。その内部には、iOS/Androidで違うコントロールを含めたりできる。StudioのiOSデザイナーを使用して行う方法を解説。コードで画面遷移を実装する方法も説明する。Xamarin.iOSで画面遷移先にデータを渡すには?(Storyboard使用)Xamarin.iOSでStoryboardにより画面遷移を行う際に、遷移元から遷移先にデータを渡す方法を解説する。Segue」を使う方法を説明する。Xamarin.iOSで地図を表示するには?(MapKit使用)Xamarin.iOSでiOS標準の地図ライブラリ「MapKit」を使って地図を表示する方法を解説。地図の種類の変更、ジェスチャの有効/無効の切り替えなども説明する。機械学習エンジニアを目指す人~初中級者のための技術情報サイトです。2023最適なビューへの切り替えを推奨します:スマートフォン用表示に。