如何发短信并突出显示该文本

时间:2016-10-29 15:32:53

标签: android text-to-speech speech-to-text

我想创建一个能突出显示文字的应用(如卡拉OK歌曲)。

3 个答案:

答案 0 :(得分:0)

首先,here您可能需要额外的资源:

我认为您正在寻找Text to Speech功能。

试试这个(你必须根据你的具体情况进行调整):

TextToSpeech tts = new TextToSpeech(this,this);
if (txtText.getText().toString().length() == 0){
      tts.speak("You", TextToSpeech.QUEUE_FLUSH, null);
      /*Change size or color of "You" in your TextView for e.g.*/
      tts.speak("haven't", TextToSpeech.QUEUE_FLUSH, null);
      /*Change size or color of "haven't" in your TextView for e.g.*/
      tts.speak("typed", TextToSpeech.QUEUE_FLUSH, null);
      /*Change size or color of "typed" in your TextView for e.g.*/
} else
        tts.speak(txtText.getText().toString(), TextToSpeech.QUEUE_FLUSH,null);

您可以使用setSpan()方法更改TextView颜色。

祝你有个美好的一天!

答案 1 :(得分:0)

  1. 开始讲第一个单词。

    mTts.speak("first word", TextToSpeech.QUEUE_FLUSH, null);

  2. 突出显示第一个单词。

    String first = "This word is "; String next = "<font color='#EE0000'>red</font>"; t.setText(Html.fromHtml(first + next));

  3. 或使用Spannable link

    1. 检测到第一个单词已经完成。

      public void onUtteranceCompleted(String utteranceId) { //Next word start }

答案 2 :(得分:0)