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

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

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


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

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

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

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

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

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

アプリケーションへのネイティブ 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 コントロールの制限事項

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

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

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

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

TCalendar

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

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

関連項目

サンプル