2017-07-25 27 views
0

我注意到,在很多情況下android:importantForAccessibility="yes"可以通過android:focusable="true"更換和工作完全一樣話語提示。什麼時候應該使用android:importantForAccessibility="yes"而不是使用可聚焦的?使用TalkBack時,Android focusable和importantForAccessibility有什麼區別?

的Android定義android:importantForAccessibility爲:

描述了該視圖是否是可訪問重要的。如果它很重要,視圖將觸發輔助功能事件,並向查詢屏幕的輔助功能服務報告。注意:儘管不推薦,但輔助功能服務可能會決定忽略此屬性,並對視圖樹中的所有視圖進行操作。 https://developer.android.com/reference/android/view/View.html#attr_android:importantForAccessibility

而且android:focusable="true"爲:

控制的視圖是否能取得焦點。默認情況下,這是「自動」,它讓框架確定用戶是否可以將焦點移動到視圖。通過將該屬性設置爲true,該視圖被允許獲得焦點。通過將其設置爲「false」,視圖將不會佔用焦點。此值不會影響直接調用requestFocus()的行爲,無論此視圖如何,它總是會請求焦點。它只會影響焦點導航將嘗試移動焦點的位置。 https://developer.android.com/reference/android/view/View.html#attr_android:focusable

回答

0

焦點指的是「輸入焦點」和「鍵盤焦點」。可調焦的控制器可以接收輸入焦點(光標)或鍵盤焦點......這基本上意味着用戶可以使用軌跡球/鍵盤導航來突出顯示並使用「選擇」動作與這些控件進行交互......例如:敲擊鍵盤上的輸入。

isImportantForAccessibility指輔助對焦。這與輸入焦點高度相關,但有很大不同。例如,輸入聚焦「信息性」文本的內容是不合理的。但是,允許段落接收可訪問性焦點非常重要。這樣,使用話語提示的用戶就可以集中注意力並聽取針對此類信息控制的口頭反饋。

如果用戶使用鍵盤導航,輸入焦點和無障礙聚焦將是相同的,但是,如果用戶正在使用話語提示滑動導航,輸入焦點和輔助聚焦可以是不同的。

例如:

光標可能是一個EditText框,同時可訪問的重點是它下面通過VoiceFeedback向用戶解釋該控件是做什麼用的段落。

相關問題