Android プラットフォーム機能
Android 用の Xamarin.Forms アプリケーションを開発するには、Visual Studio が必要です。 サポートされているプラットフォーム ページには、前提条件に関する詳細情報が含まれています。
プラットフォーム固有設定
プラットフォーム固有設定により、カスタムのレンダラーやエフェクトを実装しなくても、特定のプラットフォームのみで利用できる機能を使用できます。
Android の Xamarin.Forms のビュー、ページ、レイアウトには、次のプラットフォーム固有設定が用意されています。
- ビジュアル要素の Z オーダーを制御して描画順序を決定する。 詳細については、「Android での VisualElement の昇格」を参照してください。
- サポートされている
VisualElement
上でレガシ カラー モードを無効にする。 詳細については、「Android の VisualElement レガシ カラー モード」を参照してください。
Android 上の Xamarin.Forms のビューには、次のプラットフォーム固有設定が用意されています。
- Android ボタンの既定のパディング値とシャドウ値を使う。 詳細については、「Android のボタンのパディングとシャドウ」を参照してください。
Entry
のソフト キーボードの入力方式エディター オプションを設定します。 詳細については、「Android のエントリ入力メソッド エディターのオプション」を参照してください。ImageButton
上でドロップ シャドウを有効にする。 詳細については、「Android での ImageButton ドロップ シャドウ」を参照してください。ListView
で高速スクロールを有効にします。 詳細については、「Android での ListView 高速スクロール」を参照してください。SwipeView
を開くときに使用される遷移を制御します。 詳細については、「SwipeView スワイプ画面切り替えモード」を参照してください。WebView
が混合コンテンツを表示できるかどうかを制御します。 詳細については、「Android 上の WebView 混合コンテンツ」を参照してください。WebView
でズームを有効にします。 詳細については、「Android での WebView ズーム」を参照してください。
Android 上の Xamarin.Forms のセルには、次のプラットフォーム固有設定が用意されています。
ViewCell
コンテキスト アクションのレガシ モードを有効にして、ListView
で選択された項目が変更されたときにコンテキスト アクション メニューが更新されないようにする。 詳細については、「Android での ViewCell コンテキスト アクション」を参照してください。
Android の Xamarin.Forms のページには、次のプラットフォーム固有設定が用意されています。
NavigationPage
上のナビゲーション バーの高さを設定する。 詳細については、「Android の NavigationPage バーの高さ」を参照してください。TabbedPage
内のページ間を移動するときの切り替えアニメーションを無効にします。 詳細については、「Android の TabbedPage ページ切り替えアニメーション」を参照してください。TabbedPage
内のページ間のスワイプを有効にします。 詳細については、「Android の TabbedPage ページ切り替えアニメーション」を参照してください。TabbedPage
でツールバーの配置と色を設定します。 詳細については、「Android での TabbedPage ツール バーの配置と色」を参照してください。
Android の Xamarin.FormsApplication
のクラスには、次のプラットフォーム固有設定が用意されています。
- ソフト キーボードの操作モードを設定します。 詳細については、「Android のソフト キーボード入力モード」を参照してください。
- AppCompat を使うアプリケーションの一時停止時と再開時に、それぞれ
Disappearing
とAppearing
のページ ライフサイクル イベントを無効にする。 詳細については、「Android のページ ライフサイクル イベント」を参照してください。
プラットフォームのサポート
当初、既定の Xamarin.Forms Android プロジェクトは、Android 5.0 より前に一般的だった以前のスタイルのコントロール レンダリングを使っていました。 テンプレートを使って構築されたアプリケーションには、メイン アクティビティの基底クラスとして FormsApplicationActivity
があります。
AppCompat を使った素材デザイン
Xamarin.Forms Android プロジェクトは、メイン アクティビティの基底クラスとして FormsAppCompatActivity
を使うようになりました。 このクラスは、Android が提供する AppCompat 機能を使って素材デザインのテーマを実装します。
以下は、既定値が FormsApplicationActivity
の Todo のサンプルです。
これは、FormsAppCompatActivity
を使うようにプロジェクトをアップグレードした後 (および追加のテーマ情報を追加した後) と同じコードです。
Note
FormsAppCompatActivity
を使う場合、一部の Android カスタム レンダラーの基底クラスは異なります。
AndroidX への移行
AndroidX は、Android サポート ライブラリに代わるものです。 AndroidX と、AndroidX ライブラリを使うように Xamarin.Forms アプリを移行する方法については、「Xamarin.Forms での AndroidX の移行」を参照してください。