在Android中,使用TextToSpeech类设置文本的性别,您需要首先创建一个TextToSpeech实例,然后使用setGender()方法设置性别。以下是一个简单的示例:
import android.os.Bundle; import android.speech.tts.TextToSpeech; import android.speech.tts.TextToSpeech.OnInitListener; import android.support.v7.app.AppCompatActivity; import android.util.Log; public class MainActivity extends AppCompatActivity implements OnInitListener { private TextToSpeech tts; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 创建TextToSpeech实例 tts = new TextToSpeech(this, this); // 设置语言为中文 int result = tts.setLanguage(TextToSpeech.LANG_CHINESE); if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) { Log.e("TTS", "Language is not supported"); } else { // 设置性别为女性 tts.setGender(TextToSpeech.GENDER_FEMALE); speakText("你好,我是一个女性助手。"); } } @Override public void onInit(int status) { if (status == TextToSpeech.SUCCESS) { Log.i("TTS", "Initialization successful"); } else { Log.e("TTS", "Initialization failed"); } } private void speakText(String text) { tts.speak(text, TextToSpeech.QUEUE_FLUSH, null); } }
在这个示例中,我们首先创建了一个TextToSpeech实例,并设置了语言为中文。然后,我们使用setGender()方法将性别设置为女性。最后,我们调用speakText()方法让文本说话。您可以根据需要更改性别为男性(TextToSpeech.GENDER_MALE)或其他类型。