2015-12-14 49 views
1

我正在嘗試在TextToSpeech(TTS)中爲輔助功能用戶添加一些額外信息,例如當用戶單擊日曆按鈕時,應該有像這樣的TTS通知是日曆小部件,用戶應該向上或向下滑動以選擇日期。TextToSpeech在打開日期選擇器時不起作用

因此,我在日曆按鈕的onclick中添加了textToSpeech代碼。但TTS不起作用,對講機直接公佈所選日期/當前日期。

我的代碼結構是這樣的: -

  calendarButton.onclick{ 
      if(accessibilityIsActive) 
      tts.speak("This is a calendar widget.Do this... to select a date") 
      }; 

當我在調試模式下,執行分步實施,TTS被執行,我能聽到我的text.But在正常模式下我選擇按鈕對講覆蓋這一步,焦點轉到當前日期的對話框標題,因此它只是告訴當前日期。我使用的是Android默認日曆小部件。

有沒有什麼方法可以使TTS工作,然後讓對講回收控制日期對話框?我正在使用android操作系統6.0的nexus 5

回答

0

請勿直接使用TTS。發佈輔助功能聲明並讓輔助功能框架決定如何處理它。

AccessibilityEvent e = AccessibilityEvent.obtain(); 
e.setEventType(AccessibilityEvent.TYPE_ANNOUNCEMENT); 
e.setClassName(getClass().getName()); 
e.setPackageName(context.getPackageName()); 
e.getText().add("some text"); 
manager.sendAccessibilityEvent(e);