View.OnProvideAutofillVirtualStructure(ViewStructure, AutofillFlags) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
仮想子を含む ViewStructure にオートフィル要求を完全に設定します。
[Android.Runtime.Register("onProvideAutofillVirtualStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideAutofillVirtualStructure_Landroid_view_ViewStructure_IHandler", ApiSince=26)]
public virtual void OnProvideAutofillVirtualStructure(Android.Views.ViewStructure? structure, Android.Views.AutofillFlags flags);
[<Android.Runtime.Register("onProvideAutofillVirtualStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideAutofillVirtualStructure_Landroid_view_ViewStructure_IHandler", ApiSince=26)>]
abstract member OnProvideAutofillVirtualStructure : Android.Views.ViewStructure * Android.Views.AutofillFlags -> unit
override this.OnProvideAutofillVirtualStructure : Android.Views.ViewStructure * Android.Views.AutofillFlags -> unit
パラメーター
- structure
- ViewStructure
自動入力のために仮想子データを入力します。
- flags
- AutofillFlags
省略可能なフラグ。
- 属性
注釈
仮想子を含む ViewStructure にオートフィル要求を完全に設定します。
このメソッドは、ビューがこのビューの下の仮想構造を管理する場合に使用する必要があります。 たとえば、 #draw(Canvas)を使用して入力フィールドを描画するビューです。
このメソッドを実装する場合、サブクラスは次の規則に従う必要があります。
<ul><li>仮想構造体内の子を識別する一意の ID であるViewStructure#newChild(int)または ViewStructure#asyncNewChild(int)idメソッドを呼び出すことによって、仮想子を追加します。
<li>子階層は必要に応じて複数のレベルを持つことができますが、オートフィルに関係のない中間レベルを除外するのが理想的です。これはオートフィルのパフォーマンスを向上させます。
<li>Also は、仮想子を自動入力するための #autofill(SparseArray) を実装します。
<li>#onProvideAutofillStructure(ViewStructure, int) を使用してオートフィル ID を設定し、ViewStructure#setAutofillId(AutofillId, int)で定義されている子構造体のオートフィル プロパティを設定します。<li>フォーカスされた仮想子が変更されたときにandroid.view.autofill.AutofillManager#notifyViewEntered(View, int, Rect)やandroid.view.autofill.AutofillManager#notifyViewExited(View, int)を呼び出します。
<li>Override #isVisibleToUserForAutofill(int) を使用して、特定の仮想ビューがユーザーに表示されているかどうかをプラットフォームが照会して、関心のあるすべてのビューが消えたときの保存のトリガーをサポートできるようにします。
<li>仮想子の値が変更されたときに android.view.autofill.AutofillManager#notifyValueChanged(View, int, AutofillValue) を呼び出します。
<li>仮想子の可視性が変更されたときに android.view.autofill.AutofillManager#notifyViewVisibilityChanged(View, int, boolean) を呼び出します。
<li>仮想子がクリックされたときに android.view.autofill.AutofillManager#notifyViewClicked(View, int) 呼び出します。
<li>ビュー構造のオートフィル コンテキストが変更され、現在のコンテキストをコミットする必要があるとき (たとえば、ユーザーが HTML ページで AutofillManager#commit() ボタンをタップしたとき) にSUBMITします。
<li>ビュー構造のオートフィル コンテキストが変更され、現在のコンテキストを取り消す必要があるとき (たとえば、ユーザーが HTML ページで AutofillManager#cancel() ボタンをタップしたとき) にCANCELします。
<li>ユーザーが AutofillManager#requestAutofill(View, int, Rect)を呼び出して自動入力を手動で要求する方法を説明します。
<li>leftに設定されたtop値とViewStructure#setDimens(int, int, int, int, int, int)値は、構造体に含まれる次のViewGroup#isImportantForAutofill()先行ビューを基準とする必要があります。
</ul>
仮想子を含むビューは、主に、 <ul><li>仮想子の意味と自動入力方法を定義するメタデータを提供することで、オートフィル フレームワークをサポートします。 <li>仮想子を自動入力するメソッドを実装します。 </ul>
この方法は前者を担当します。 #autofill(SparseArray) は後者を担当します。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。