語言

View.OnProvideContentCaptureStructure(ViewStructure, Int32) 方法

定義

填充 a ViewStructure 以進行內容擷取。

[Android.Runtime.Register("onProvideContentCaptureStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideContentCaptureStructure_Landroid_view_ViewStructure_IHandler", ApiSince=30)]
public virtual void OnProvideContentCaptureStructure(Android.Views.ViewStructure structure, int flags);
[<Android.Runtime.Register("onProvideContentCaptureStructure", "(Landroid/view/ViewStructure;I)V", "GetOnProvideContentCaptureStructure_Landroid_view_ViewStructure_IHandler", ApiSince=30)>]
abstract member OnProvideContentCaptureStructure : Android.Views.ViewStructure * int -> unit
override this.OnProvideContentCaptureStructure : Android.Views.ViewStructure * int -> unit

參數

structure
ViewStructure

用於結構的 Android.Views.ViewStructure 值。

flags
Int32

用於旗標的 System.Int32 值。

屬性

備註

填充 a ViewStructure 以進行內容擷取。

此方法在一個符合內容擷取資格的檢視(例如,若 #isImportantForContentCapture(),使用者啟用了情報服務,且呈現該視圖的活動啟用了內容擷取)並顯示出後,才會被呼叫。 填充的結構隨後透過 傳遞給服務 ContentCaptureSession#notifyViewAppeared(ViewStructure)。

此方法的預設實作會根據相關 View 方法設定最相關的屬性,標準 Android widgets 函式庫中的檢視也會覆蓋它以設定相關屬性。 因此,若覆寫此方法,建議呼叫 super.onProvideContentCaptureStructure()。

<b>注意: <管理此視圖下虛擬結構的 /b>視圖必須只填充代表該視圖的節點並立即返回,然後非同步(不一定在 UI 執行緒中)子節點出現、消失或文字變更時,分別呼叫 ContentCaptureSession#notifyViewAppeared(ViewStructure)、 ContentCaptureSession#notifyViewDisappeared(AutofillId)、 ContentCaptureSession#notifyViewTextChanged(AutofillId, CharSequence) 和 。 子節點的結構必須使用 ContentCaptureSession#newVirtualViewStructure(AutofillId, long),而子節點的結構 autofillId 可透過 childStructure.getAutofillId() 或 ContentCaptureSession#newAutofillId(AutofillId, long)取得。

當虛擬視圖階層代表一個網頁時,你也應該:

<ul><li>呼叫 ContentCaptureManager#getContentCaptureConditions() 推斷內容擷取事件應為該 URL 產生。 <li>為每個渲染新 URL(例如 ContentCaptureSession)的 HTML 元素建立一個新IFRAME子節點,並用該會話通知該子樹中的事件。 </ul>

<b>註:</b >structure以下 will 的方法被忽略:<ul><li>ViewStructure#setChildCount(int)<li>ViewStructure#addChildCount(int)<li>ViewStructure#getChildCount()<li>ViewStructure#newChild(int)<>ViewStructure#asyncNewChild(int)<li>ViewStructure#asyncCommit()<>ViewStructure#setWebDomain(String)<>ViewStructure#newHtmlInfoBuilder(String)<>ViewStructure#setHtmlInfo(android.view.ViewStructure.HtmlInfo)<>ViewStructure#setDataIsSensitive(boolean)<>ViewStructure#setAlpha(float)<>ViewStructure#setElevation(float)<>ViewStructure#setTransformation(Matrix)</ul>

Java 文件 android.view.View.onProvideContentCaptureStructure(android.view.ViewStructure, int)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於