2014-11-21 154 views
2

我在設計可通過Talkback訪問的應用程序時遇到此問題。TalkBack,當進入警報對話框(或)提醒對話框的替代時,不會說「警告」

當android打開一個警告對話框時,它會讀出單詞「alert」,隨後是對話框的其餘部分。 我沒有使用警報對話框來顯示警報,有沒有什麼方法可以確保android直接讀出對話框而不讀出「alert」這個詞。

此外,如果我只是想顯示一些數據從屏幕彈出,並可以解除同樣的方式解除警報對話框,並且回話可以很好地與工作?

+0

反對什麼版本的話語提示你測試? – alanv 2014-11-24 23:27:05

+0

我在運行最新版本的TalkBack 3.5.2的nexus 5上測試它。 – 2014-11-26 00:37:31

+0

@JehoshaphAkshay你有沒有找到解決這個問題的方法? – user1064249 2015-04-28 16:11:59

回答

-1

基於this Google Groups post,只需重寫View.dispatchPopulateAccessibilityEvent方法即可。

例如:

@Override 
public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) { 
    //super.dispatchPopulateAccessibilityEvent(event); 
    event.setBeforeText("My custom alert title text"); 
    event.getText().clear(); 
    return true; 
} 
+1

我應該在哪個視圖上設置? – Onheiron 2015-08-25 09:23:47

+1

[這是API級別4以來的視圖類的方法](http://developer.android.com/reference/android/view/ View.html#dispatchPopulateAccessibilityEvent%28 android.view.accessibility.AccessibilityEvent%29),所以你可以覆蓋它在任何視圖。 你可以看看[這個SO線程](http://stackoverflow.com/questions/ 30904554/dispatchpopulateaccessibilityevent-not-triggered)作爲一個例子如何做到這一點。 – 2015-08-25 10:21:20