2015-12-14 47 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);