La aplicación Text to Speech convierte el texto escrito en la pantalla en voz como si hubiera escrito «Hello World» en la pantalla y cuando presiona el botón dirá «Hello World». El texto a voz se usa comúnmente como una función de accesibilidad para ayudar a las personas que tienen problemas para leer el texto en pantalla, pero también es conveniente para aquellos que también quieren que les lean.
Nota: Para implementar su viceversa, es decir, convertir voz a texto, consulte ¿Cómo convertir voz a texto en Android?
Pasos para convertir texto a voz en Android
Paso 1: Crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Java como lenguaje de programación.
Paso 2: trabajar con el archivo activity_main.xml
Vaya a la sección aplicación -> res -> diseño -> actividad_principal.xml y configure el diseño de la aplicación. En este archivo, agregue un EditText para ingresar el texto del usuario, un Button , de modo que cada vez que el usuario haga clic en el Button, se convierta en voz y un TextView para mostrar el texto de GeeksforGeeks. A continuación se muestra el código completo para el archivo activity_main.xml .
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:layout_margin="30dp" tools:context=".MainActivity"> <!--To add text in the app--> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/Text" android:layout_marginBottom="20dp" android:hint="Enter Any Sentence" android:gravity="center" android:textSize="16dp"/> <!--when you press this button it will convert text into speech--> <Button android:layout_width="wrap_content" android:id="@+id/btnText" android:layout_height="wrap_content" android:text="Click Here" android:layout_gravity="center"/> <!--To display the name of GeeksForGeeks --> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="70dp" android:gravity="center_horizontal" android:text="GEEKSFORGEEKS" android:textColor="@android:color/holo_green_dark" android:textSize="36sp" /> </LinearLayout>
Paso 3: trabajar con el archivo MainActivity.java
Vaya a la aplicación -> java -> com.example.GFG (Nombre del paquete) -> sección MainActivity.java. Ahora una el botón y Edittext al código Java y se agregan comentarios dentro del código para entender el código fácilmente. A continuación se muestra el código completo del archivo MainActivity.java .
MainActivity.java
import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.speech.tts.TextToSpeech; import android.view.View; import android.widget.Button; import android.widget.EditText; import java.util.Locale; public class MainActivity extends AppCompatActivity { EditText Text; Button btnText; TextToSpeech textToSpeech; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Text = findViewById(R.id.Text); btnText = findViewById(R.id.btnText); // create an object textToSpeech and adding features into it textToSpeech = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() { @Override public void onInit(int i) { // if No error is found then only it will run if(i!=TextToSpeech.ERROR){ // To Choose language of speech textToSpeech.setLanguage(Locale.UK); } } }); // Adding OnClickListener btnText.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { textToSpeech.speak(Text.getText().toString(),TextToSpeech.QUEUE_FLUSH,null); } }); } }
El usuario también puede elegir otro idioma. Para eso, consulte la imagen a continuación para ver cómo hacerlo.
Salida: ejecutar en el emulador
Publicación traducida automáticamente
Artículo escrito por kartiksrivastava6 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA