Sprache

View.OnProvideAutofillStructure(ViewStructure, AutofillFlags) Methode

Definition

Füllt eine ViewStructure to fullfil-Anforderung für das automatische Ausfüllen auf.

[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

Parameter

structure
ViewStructure

Ausfüllen mit strukturierten Ansichtsdaten für automatische Ausfüllzwecke.

flags
AutofillFlags

optionale Kennzeichnungen.

Attribute

Hinweise

Füllt eine ViewStructure to fullfil-Anforderung für das automatische Ausfüllen auf.

Die Struktur sollte mindestens die folgenden Eigenschaften enthalten: <ul><li>Autofill id (ViewStructure#setAutofillId(AutofillId, int)). <li>AutoAusfülltyp (ViewStructure#setAutofillType(int)). <li>AutoAusfüllwert (ViewStructure#setAutofillValue(AutofillValue)). <li>Gibt an, ob die Daten vertraulich sind (ViewStructure#setDataIsSensitive(boolean)). </ul>

Es wird auch empfohlen, die folgenden Eigenschaften festzulegen – je mehr Eigenschaften die Struktur hat, desto höher ist die Wahrscheinlichkeit, dass die android.service.autofill.AutofillService Struktur ordnungsgemäß verwendet wird:

<ul><li>AutoAusfüllhinweise (ViewStructure#setAutofillHints(String[])). <Li>AutoAusfülloptionen (ViewStructure#setAutofillOptions(CharSequence[])) wenn die Ansicht nur mit vordefinierten Werten gefüllt werden kann (in der Regel verwendet, wenn der AutoAusfülltyp ist #AUTOFILL_TYPE_LIST). <li>Resource ID (ViewStructure#setId(int, String, String, String)). <li>Klassenname (ViewStructure#setClassName(String)). <li>Inhaltsbeschreibung (ViewStructure#setContentDescription(CharSequence)). <li>Visuelle Eigenschaften wie Sichtbarkeit (), Dimensionen (ViewStructure#setVisibility(int)ViewStructure#setDimens(int, int, int, int, int, int)) und Deckkraft (ViewStructure#setOpaque(boolean)). <li>Für Ansichten, die Textfelder darstellen, Texteigenschaften wie den Text selbst (ViewStructure#setText(CharSequence)), Texthinweise (ViewStructure#setHint(CharSequence), Eingabetyp (ViewStructure#setInputType(int)), <li>Für Ansichten, die HTML-Knoten darstellen, deren Webdomäne () und HTML-Eigenschaften (ViewStructure#setWebDomain(String)(ViewStructure#setHtmlInfo(android.view.ViewStructure.HtmlInfo)). </ul>

Die Standardimplementierung dieser Methode legt bereits die meisten dieser Eigenschaften basierend auf verwandten View Methoden fest (z. B. wird die AutoAusfüll-ID mit #getAutofillId()festgelegt, der AutoAusfülltypsatz mit #getAutofillType()usw.) und Ansichten in der standardmäßigen Android Widgets-Bibliothek überschreiben sie auch, um ihre relevanten Eigenschaften festzulegen (z. B. bereits die Texteigenschaften festgelegt), daher wird empfohlen, android.widget.TextView diese Methode (und den Aufruf super.onProvideAutofillStructure()) nur in folgenden Fällen außer Kraft zu setzen:

<ul><li>Der Ansichtsinhalt enthält keine PII (personenbezogene Informationen), sodass er die Übergabe ViewStructure#setDataIsSensitive(boolean)aufrufen false kann. <li>Die Ansicht kann nur mit vordefinierten Optionen automatisch ausgefüllt werden, sodass sie aufgerufen ViewStructure#setAutofillOptions(CharSequence[])werden kann. </ul>

<b>Hinweis:</b> Die left in der Struktur enthaltenen top Werte ViewStructure#setDimens(int, int, int, int, int, int) und Werte müssen relativ zur nächsten ViewGroup#isImportantForAutofill() Vorgängeransicht sein, die in der Struktur enthalten ist.

Ansichten unterstützen das AutoAusfüllframework hauptsächlich durch: <ul><li>Stellt die Metadaten bereit, die definieren, was die Ansicht bedeutet und wie sie automatisch ausgefüllt werden kann. <li>Notifying the Android System when the view value changed by calling AutofillManager#notifyValueChanged(View). <li>Implementieren der Methoden, die die Ansicht automatisch ausfüllen. </ul>

Diese Methode ist für den früheren Verantwortlichen verantwortlich; #autofill(AutofillValue) ist für letztere verantwortlich.

Java Dokumentation für android.view.View.onProvideAutofillStructure(android.view.ViewStructure, int).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: