View.OnPopulateAccessibilityEvent(AccessibilityEvent) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這是為了 #dispatchPopulateAccessibilityEvent(AccessibilityEvent) 讓這個檢視能用文字內容填充無障礙事件的機會而被召喚的。
[Android.Runtime.Register("onPopulateAccessibilityEvent", "(Landroid/view/accessibility/AccessibilityEvent;)V", "GetOnPopulateAccessibilityEvent_Landroid_view_accessibility_AccessibilityEvent_Handler")]
public virtual void OnPopulateAccessibilityEvent(Android.Views.Accessibility.AccessibilityEvent? e);
[<Android.Runtime.Register("onPopulateAccessibilityEvent", "(Landroid/view/accessibility/AccessibilityEvent;)V", "GetOnPopulateAccessibilityEvent_Landroid_view_accessibility_AccessibilityEvent_Handler")>]
abstract member OnPopulateAccessibilityEvent : Android.Views.Accessibility.AccessibilityEvent -> unit
override this.OnPopulateAccessibilityEvent : Android.Views.Accessibility.AccessibilityEvent -> unit
參數
無障礙活動應該填滿。
- 屬性
備註
這是為了 #dispatchPopulateAccessibilityEvent(AccessibilityEvent) 讓這個檢視能用文字內容填充無障礙事件的機會而被召喚的。
<b>注意:</b> 此方法僅應用於 event.setText()。 避免在此方法中突變其他事件狀態。 相反地,請遵循文中 #dispatchPopulateAccessibilityEvent(AccessibilityEvent)所述的做法。 一般來說,將 UI 元資料放在節點裡,讓服務更容易查詢,而不是放在暫態事件中。
範例:在無障礙事件中新增格式化日期字串,除了超級實作新增的文字外:
public void onPopulateAccessibilityEvent(AccessibilityEvent event) {
super.onPopulateAccessibilityEvent(event);
final int flags = DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_WEEKDAY;
String selectedDateUtterance = DateUtils.formatDateTime(mContext,
mCurrentDate.getTimeInMillis(), flags);
event.getText().add(selectedDateUtterance);
}
如果 是 AccessibilityDelegate 透過呼叫 #setAccessibilityDelegate(AccessibilityDelegate) 指定,則 AccessibilityDelegate#onPopulateAccessibilityEvent(View, AccessibilityEvent) 負責處理此呼叫。
<strong>注意:</strong> 在加入事件資訊前,務必呼叫超級實作,以防預設實作有基本資訊可加。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。