2010-02-09 14 views
5

Estoy usando Text to Speech.Text to Speech setLanguage() no funciona

Cuando me puse el idioma con

mTts = new TextToSpeech(this, this); 
mTts.setLanguage(Locale.UK) 

Siempre tengo un acento americano.

La única manera de solucionar esto es cambiando la configuración de idioma predeterminada en el sistema Android. ¿Qué estoy haciendo mal?

Respuesta

7

RESUELTO

en vez de ponerlo en el interior onActivityResult() lo puso dentro de onInit (int status) y funciona

+0

Comportamiento extraño. Parece que TTS realmente necesita ser inicializado por completo antes de configurar el idioma. – Sney

+2

No funciona para mí en el método onInit (estado interno). ¡Me estoy volviendo loco! –

0

Hay otro caso que el idioma no está instalado en TTS y el dispositivo no lo hace tener acceso a la red Lo he visto en KitKat. En ese caso, tts no cambia el idioma. No dará getAvailableLanguages() y solo funcionará en el idioma predeterminado. Puede verlo llamando al getLanguage() después de asignar el nuevo idioma