FireMonkey ネイティブ Android コントロール

提供: RAD Studio
移動先: 案内検索

FireMonkey のネイティブ コントロール への移動


このトピックでは、FireMonkey の ネイティブ Android コントロールについて説明します。

FireMonkey ネイティブ Android コントロール形式

FireMonkey では、特定のビジュアル コンポーネントに対して、ネイティブ形式を提供しています。

  • ControlType プロパティを Styled に設定すると、コントロールの標準 FireMonkey 形式が利用されます。Styled は、ControlType のデフォルト値です。
  • ControlType プロパティを Platform に設定すると、そのコントロールのネイティブ スタイルが使用されます。

利用可能な FireMonkey ネイティブ Android コントロール

ネイティブ表示をサポートしているコントロールは次のとおりです。

ネイティブ Android コントロールの外見の変化

ビジュアル コンポーネントの ControlType プロパティを Platform に設定した場合、フォーム デザイナ でのこのコントロールの表示は、ネイティブ コントロールであることを示すように変わり、スマートフォンのような小さいアイコンが右下隅に表示されます。

次の表では、ControlType プロパティを StyledPlatform に設定した場合の、設計時および実行時の、ネイティブ Android コントロールの外見をいくつか例図で示します。

コントロール 設計時 実行時
Styled Platform Styled Platform

TCalendar

TCalendar Styled DT.png

TCalendar Plat DT.png

TCalendar SP RT.png

TCalendar SP RT.png

TEdit

TEdit1.png

TEdit2.png

TEditStyled RT win.png

TEdit Plat RunT.png

TMemo

Tmemo Styled DT.png

Tmemo Plat DT.png

Tmemo Style RT.png

Tmemo Plat RT.png

TPresentedScrollBox

Tpresented Styled DT.png

Tpresented Plat DT.png

Tpresented Styled RT.png

Tpresented Plat RT.png

TSwitch

TSwitch Styled DT.png

TSwitch Plat DT.png

TSwitch Styled RT.png

TSwitch Plat RT.png

アプリケーションへのネイティブ Android コントロールの追加

次のステップに従って、ネイティブ Android コントロールをアプリケーションに追加します:

  1. ネイティブ形式をサポートするコンポーネントを、フォームに追加します。
  2. オブジェクト インスペクタのプロパティで、ControlType プロパティを プラットフォームに設定します。コンポーネントの形式を設計時に変更します。
  3. アプリケーションを Android デバイス上で実行します。

代わりに、実行時に ControlType の値を変更しても構いません。TEdit コントロールのネイティブ表現を選択するには、次のコードをアプリケーションに追加します:

Delphi:
Edit1.ControlType := TPresentedControl.TControlType.Platform;
C++:
Edit1->ControlType = TPresentedControl::TControlType::Platform;

ネイティブ Android コントロールを非ネイティブ コントロールと組み合わせる

非ネイティブ コントロールには、ネイティブ コントロールの Z オーダー をサポートしているものもあります。このため、それらをネイティブ コントロールと組み合わせて使用することができます。次の一覧は、ControlType プロパティを持っており、ネイティブ コントロールと混在利用可能な全コントロールです:

次の一覧は、スタイルを介して FireMonkey で描画されないため、ネイティブ コントロールとしてのみ利用可能であるコントロールです。これらのネイティブ限定コントロールには ControlType プロパティがありませんが、実際には他のネイティブ コントロールと組み合わせることができ、適切に Z オーダーで動作します。

ネイティブ Android コントロールの利点

コントロールをネイティブ コントロールとして使用する際に、コントロールの ControlType プロパティを Platform に変更することで、コントロールによっては、追加機能をサポートするものもあります。

TEdit

  • 自動修正: 単語の入力中に候補が表示され、スペース キーを押してそれらを使用することができます。
  • 定義: 単語を選択して[辞書]をクリックすると、辞書におけるその単語の定義が表示されます。
  • ピリオドの簡易入力: スペース キーをダブル タップすると、ピリオドとスペースが挿入されます。
  • ショートカット: 入力時に語句に展開されます。
メモ: Android では、[設定|一般|キーボード]を選択して、これらの機能を切り替えることができるページにアクセスします。

上記の機能の一部は、コントロールのコンテキスト メニューで提供されており、このため、メモ コントロールや編集コントロールのコンテキスト メニューは、Styled や Platform で変わってきます:

ネイティブ Android コントロールの制限事項

ネイティブ コントロールを使用する前に、次の制限事項について検討してください:

  • ネイティブ コントロールは、事前定義スタイルやカスタム スタイルをサポートしていません。 ネイティブ コントロールの ControlType プロパティが Platform に設定された場合、StyleLookup プロパティの値は無視されます。
  • ネイティブ コントロールは、フォームの Z オーダーをサポートしません: ネイティブ コントロールは常に、フォーム上の他の利用可能な FireMonkey コントロールの一番上にきます。

次のイベント ハンドラはサポートされておらず、実装することはできません:

個々のコントロールに固有の制限もあります:

TCalendar

カレンダー ビューのネイティブ表示では、丸 1 か月は表示されず、そのため、次のプロパティはサポートされていません。

  • WeekNumbers (プロパティがどのように動作するかは、使用する Android テーマによって変わります。マテリアルのデザイン テーマはこの外観プロパティをサポートしていません。)
  • FirstDayOfWeek

関連項目

サンプル