View.OnProvideAutofillStructure(ViewStructure, AutofillFlags) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オートフィル要求をフルフィルする ViewStructure を設定します。
[Android.Runtime.Register("onProvideAutofillStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideAutofillStructure_Landroid_view_ViewStructure_IHandler", ApiSince=26)]
public virtual void OnProvideAutofillStructure(Android.Views.ViewStructure? structure, Android.Views.AutofillFlags flags);
[<Android.Runtime.Register("onProvideAutofillStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideAutofillStructure_Landroid_view_ViewStructure_IHandler", ApiSince=26)>]
abstract member OnProvideAutofillStructure : Android.Views.ViewStructure * Android.Views.AutofillFlags -> unit
override this.OnProvideAutofillStructure : Android.Views.ViewStructure * Android.Views.AutofillFlags -> unit
パラメーター
- structure
- ViewStructure
自動入力のために構造化ビュー データを入力します。
- flags
- AutofillFlags
省略可能なフラグ。
- 属性
注釈
オートフィル要求をフルフィルする ViewStructure を設定します。
構造体には、少なくとも次のプロパティが含まれている必要があります: <ul><li>autofill id (ViewStructure#setAutofillId(AutofillId, int))。
<li>Autofill 型 (ViewStructure#setAutofillType(int))。
<li>Autofill 値 (ViewStructure#setAutofillValue(AutofillValue))。
<li>データが機密性の高い (ViewStructure#setDataIsSensitive(boolean))。
</ul>
次のプロパティを設定することもお勧めします。構造体のプロパティが多いほど、構造体を適切に使用 android.service.autofill.AutofillService 可能性が高くなります。
<ul><li>オートフィル ヒント (ViewStructure#setAutofillHints(String[]))。
<li>オートフィル オプション (ViewStructure#setAutofillOptions(CharSequence[])) は、ビューに定義済みの値のみを入力できる場合 (通常、オートフィルの種類が #AUTOFILL_TYPE_LISTの場合に使用されます)。
<li>Resource id (ViewStructure#setId(int, String, String, String))。
<li>Class name (ViewStructure#setClassName(String))。
<li>Content description (ViewStructure#setContentDescription(CharSequence))。
<li>可視性 (ViewStructure#setVisibility(int))、ディメンション (ViewStructure#setDimens(int, int, int, int, int, int))、不透明度 (ViewStructure#setOpaque(boolean)) などのビジュアル プロパティ。
<li>テキスト フィールドを表すビュー、テキスト自体 (ViewStructure#setText(CharSequence))、テキスト ヒント (ViewStructure#setHint(CharSequence)、入力の種類 (ViewStructure#setInputType(int))、 <li> HTML ノードを表すビュー、その Web ドメイン (ViewStructure#setWebDomain(String)) および HTML プロパティ ((ViewStructure#setHtmlInfo(android.view.ViewStructure.HtmlInfo)) など)。
</ul>
このメソッドの既定の実装では、関連する View メソッドに基づいてこれらのプロパティの大部分が既に設定されています (たとえば、オートフィル ID は #getAutofillId() を使用して設定されます。 #getAutofillType() また、標準の Android ウィジェット ライブラリのビューも、関連するプロパティを設定するためにオーバーライドされます (たとえば、 android.widget.TextView は既にテキスト プロパティを設定しています)、このメソッドをオーバーライドする (および super.onProvideAutofillStructure() を呼び出す) ことをお勧めします。
<ul><li>ビューの内容には PII (個人を特定できる情報) が含まれていないため、ViewStructure#setDataIsSensitive(boolean)渡false呼び出すことができます。
<li>ビューは定義済みのオプションでのみオートフィルできるため、 ViewStructure#setAutofillOptions(CharSequence[])を呼び出すことができます。
</ul>
<b>Note:</b>leftに設定されたtopとViewStructure#setDimens(int, int, int, int, int, int)の値は、構造体に含まれる次のViewGroup#isImportantForAutofill()先行ビューを基準とする必要があります。
ビューは、主にオートフィル フレームワークをサポートします。 <ul><li>ビューの意味と自動入力方法を定義するメタデータを作成します。
<li>ビュー値が AutofillManager#notifyValueChanged(View)を呼び出して変更されたときのAndroidシステムの通知。
<li>ビューをオートフィルするメソッドを実装します。
</ul>
この方法は前者を担当します。 #autofill(AutofillValue) は後者を担当します。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。