在Android中,使用TextToSpeech类设置语速可以通过setSpeechRate()
方法来实现。以下是一个简单的示例代码,展示了如何设置语速:
import android.os.Bundle; import android.speech.tts.TextToSpeech; import android.speech.tts.TextToSpeech.OnInitListener; import android.speech.tts.UtteranceProgressListener; import android.support.v7.app.AppCompatActivity; import android.util.Log; public class MainActivity extends AppCompatActivity implements OnInitListener, UtteranceProgressListener { private TextToSpeech mTts; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化TextToSpeech对象 mTts = new TextToSpeech(this, this); // 设置语速,范围为0.1到10.0,1.0为正常语速 float speechRate = 1.5f; // 你可以设置任意值,这里设置为1.5倍速 mTts.setSpeechRate(speechRate); // 设置文本内容 String text = "这是一个示例文本。"; mTts.speak(text, TextToSpeech.QUEUE_FLUSH, null); } @Override public void onInit(int status) { if (status == TextToSpeech.SUCCESS) { Log.d("TextToSpeech", "初始化成功"); } else { Log.e("TextToSpeech", "初始化失败"); } } @Override public void onStart(Utterance utterance) { Log.d("TextToSpeech", "开始说话"); } @Override public void onStop() { Log.d("TextToSpeech", "停止说话"); } @Override public void onPause() { Log.d("TextToSpeech", "暂停说话"); } @Override public void onResume() { Log.d("TextToSpeech", "恢复说话"); } @Override public void onError(int errorCode) { Log.e("TextToSpeech", "发生错误: " + errorCode); } }
在这个示例中,我们首先创建了一个TextToSpeech对象,并实现了OnInitListener
接口以便在初始化完成后进行操作。然后,我们使用setSpeechRate()
方法设置了语速,这里的值是一个浮点数,范围从0.1到10.0,其中1.0代表正常语速。最后,我们调用speak()
方法开始说话。