2015-03-25 126 views
1

我添加了一些ImageView的內容描述。在使用話語提示進行測試時,其中一些將「按鈕」附加到contentDescription,而另一些則不附加。演講中是否存在一致的行爲?

注意:某些ImageView具有OnClickListener,而其他ImageView具有onTouchListener。帶有onClickListener的ImageView在contentDescription後面附加「button」,而帶有onTouchListener的ImageView則不附帶。

此外,我已經注意到,設置android:clickable="true"爲ImageView與onTouchListener宣佈「button」與contentDescription。

處理這種不一致的最佳方法是什麼?
設置android:clickable="true"是否會影響onTouchListener的現有功能?ImageView的Android輔助功能

+1

這個imageViews是可點擊的嗎?你是否設置了onClickListeners?也許這是「按鈕」描述的原因。 – VadymVL 2015-03-25 08:11:41

+0

發佈您的代碼和xml在這裏.. – 2015-03-25 08:18:09

+0

@VadymVL:是的一些ImageViews有OnClickListener,而其他人有onTouchListeners。帶onClickListeners的人在contentDescription後面加上「button」。在使用onTouchListeners的ImageViews的contentDescription中添加**按鈕**是一種推薦的方法(以保持整個應用程序的一致性)? – 2015-03-25 09:20:02

回答

2

從可訪問性的角度來看,「按鈕」不是視圖的子類型,而是接受交互的元素。活動圖像,接受觸摸事件的圖像,clickables,onClickListeners等都是活動圖像的示例。這些圖像以按鈕形式發佈,因爲如果用戶在屏幕上雙擊並集中注意力,他們就會執行操作。如果圖像只是提供信息,它只會讀取它的內容描述。等同於他們是否集中了一段文字。

TalkBack通過添加有關他們正在與之交互的對象類型的信息,幫助無視力的用戶識別圖像是活動還是信息圖像。在這種情況下,類型由可以發生的交互類型來定義,而不是由實際所處的對象類型來定義。

+0

「活動圖像,接受**觸摸事件的圖像**,可點擊的事件,onClickListeners等都是活動圖像的示例。」但我注意到,帶有onClickListeners的ImageView在contentDescription後面附加了「button」,而帶有onTouchListener **的ImageView沒有。 – 2015-03-26 07:25:27

+2

onTouchListener通常不應用於「點擊」。 onTouchListeners用於其他自定義交互。使用onTouchListener響應簡單的按鈕按下是可能的,是的,但不是推薦的用例,因爲它屬於onClickListener。這就是爲什麼具有onTouchListeners的項目不會被宣佈爲按鈕。事實上,恕我直言,簡單包含onTouchListeners本質上破壞了應用程序的可訪問性,除非提供了執行這些操作的替代方法。 – ChrisCM 2015-03-26 13:16:29

+0

通過可訪問性APi獲取圖像視圖文本的任何方法? – 2017-06-12 12:01:47