2016-10-29 3 views
0

Ich möchte eine App, die spricht, während es Text markiert (wie Karaoke-Songs).Wie Text in Sprache und markieren Sie diesen Text

+0

hier ein [einfaches Text-to-Speech Beispiel] (http://stackoverflow.com/questions/32936077/googles-text- zu sprechen-api-von-android-app/32936643 # 32936643). Eine "benutzerdefinierte Stimme" ist dann ein separates Problem und entweder einfach, schwierig oder praktisch unmöglich, je nachdem, was Sie mit einer "benutzerdefinierten Stimme" meinen. Möglicherweise finden Sie Hilfe von [älteren Diskussionen über Hervorhebung von Text] (http://stackoverflow.com/search?q=android+highlight+text) für den Hervorhebungsteil. –

+0

Ich möchte eine App wie dieses Video machen .......... https://www.youtube.com/watch?v=0qE3egNettY –

Antwort

0

Zunächst einmal here Sie eine zusätzliche Ressource haben vielleicht benötigen Sie:

Ich glaube, Sie suchen eine Text to Speech Funktionalität.

Probieren Sie diese (Sie dies Ihrem speziellen Fall anpassen müssen):

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); 

Sie Ihre Textview Farbe mit setSpan() Methode ändern könnte.

Guten Tag!

0
  1. Starten Sie das erste Wort zu sprechen.

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

  2. Highlight erstes Wort.

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

Oder Spannablelink

Verwenden
  1. erste Wort Detect beendet ist.

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

+0

'UtteranceProgressListener' hat nicht die Methode' onUtteranceCompleted', wo ist es? – rraallvv