Xamarin.iOS のユーザー インターフェイス制御

このドキュメントでは、最も一般的な iOS ユーザー インターフェイス制御とその使用方法について説明します。

警告

iOS 8 以降、UIAlertController が UIActionSheet と UIAlertView に完全に置き換わり、どちらも非推奨になりました。

ボタン

UIButton クラスは、iOS 画面のさまざまなスタイルのボタンを表すために使用されます。 このセクションでは、iOS でボタンを操作するためのさまざまなオプションを紹介します。

コレクション ビュー

UICollectionView クラスで使用できるコレクション ビューは、レイアウトを使って画面上に複数の項目を表示する iOS 6 の新しい概念です。 UICollectionView にデータを提供して項目を作成し、それらの項目を操作するためのパターンは、iOS 開発でよく使用されるのと同じデリゲートおよびデータ ソース パターンに従います。

イメージ

アプリに画像を追加するには、2 つの手順が必要です。最初に、プロジェクトに画像を追加します。次に、コントロールとコードを追加して画面に表示します。 Xamarin.iOS での画像処理の詳細については、画像の操作に関する記事を参照してください。

手動カメラ コントロール

iOS 8 の AVFoundation Framework で提供される手動カメラ コントロールを使用すると、モバイル アプリケーションで iOS デバイスのカメラを完全に制御できます。 このきめ細かいレベルのコントロールを使用して、プロ レベルのカメラ アプリケーションを作成し、静止画像やビデオを撮影しながらカメラのパラメータを調整することで、芸術的な創作を提供できます。

マップ

マップは、最新のすべてのモバイル オペレーティング システムに一般的な機能です。 iOS では、Map Kit フレームワークを通じてネイティブにマップ サポートが提供されます。 Map Kit を使用すると、アプリケーションは豊富な対話型マップを簡単に追加できます。 これらのマップは、マップ上の位置をマークする注釈の追加や、任意の図形のグラフィックスのオーバーレイなど、さまざまな方法でカスタマイズできます。 Map Kit には、デバイスの現在位置を表示するためのサポートも組み込まれています。

ラベル

UILabel コントロールは、単一行と複数行の読み取り専用テキストを表示するために使用されます。

ピッカーと日付の選択

ピッカー コントロールには、選択した値が強調表示されているスクロール可能な値の一覧を含む "ホイールのような" コントロールが表示されます。 ユーザーはホイールを回転させて、必要なオプションを選択します。

ピッカーの特定のユーザー ケースの 1 つは、日付や時刻を設定することです。 これを実現するために、Apple は UIDatePicker と呼ばれる UIPickerView クラスのカスタム サブクラスを作成しました。

進行状況とアクティビティのインジケーター

iOS には、アプリの進行状況を示す主な方法として、アクティビティ インジケーター (特定のネットワーク アクティビティ インジケーターを含む) と進行状況バーの 2 つがあります。

検索バー

UISearchBar は、値の一覧を検索するために使用されます。

スライダー、スイッチ、およびセグメント付きコントロール

スライダー コントロールを使用すると、範囲内の数値を簡単に選択できます。 iOS では、他のプラットフォームのラジオ ボタンで表される場合があるブール型入力として UISwitch が使用されます。 セグメント化されたコントロールは、ユーザーが少数のオプションを操作できるようにする整理された方法です。

スタック ビュー

スタック ビュー コントロール (UIStackView) は、自動レイアウトとサイズ調整クラスの機能を利用して、iOS デバイスの向きと画面サイズに動的に対応するサブビューのスタック (水平方向または垂直方向) を管理します。

テーブルとセル

このセクションでは、テーブルの作成と表示に使われるクラスについて説明し、Xamarin.iOS でそれらを使用する方法の例を示します。 ここでは、テーブルの既定の外観の使用、レイアウトのカスタマイズ、編集の実装、Xamarin iOS Designer を使った視覚的なテーブルのデザインについて説明します。 表示が明らかに行の一覧 (音楽アプリなど) である場合もあれば、テーブル コントロールを認識するのが難しい場合 (連絡先アプリでの編集やメッセージ アプリでの会話など) もあります。

テキスト入力

ユーザーのテキスト入力の受け入れは、単一行入力の場合は UITextField を使用し、複数行の編集可能テキストの場合は UITextView を使用して実行されます。 これらのコントロールのいずれかを画面にドラッグし、ダブルクリックして初期テキストを設定できます。

タブ バーとタブ バー コント ローラー

タブ ナビゲーション UI を使用する iOS アプリケーションは、UITabBarController クラスを使用して構築されます。 この記事では、複数のコントローラーとビューを含むタブ付きアプリケーションを設定する方法について説明します。 次に、UITabBarController がルート コントローラーでない場合 (ログイン画面の後など) に読み込む方法を確認します。

Web ビュー

この記事では、Apple が提供する Web ビュー WKWebview および SFSafariViewController とその類似点と相違点、およびそれらの使用方法について説明します。