糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > tts android Android系统自带的TTS实现语音播报

tts android Android系统自带的TTS实现语音播报

时间:2022-08-20 22:53:28

相关推荐

tts android Android系统自带的TTS实现语音播报

Android系统自带的TTS实现语音播报(类似支付宝到账xx元)(这里写自定义目录标题)

以按钮的点击事件来实现:

public class MainActivity extends Activity {

private TextToSpeech textToSpeech = null;//创建自带语音对象

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

findViewById(R.id.btn_tts).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

startAuto(“已到账,请到支付宝查看”);

}

});

initTTS();

}

private void startAuto(String data) {

// 设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规

textToSpeech.setPitch(1.0f);

// 设置语速

textToSpeech.setSpeechRate(1.0f);

textToSpeech.speak(data, TextToSpeech.QUEUE_FLUSH, null, null);

}

private void initTTS() {

//实例化自带语音对象

textToSpeech = new TextToSpeech(this, new TextToSpeech.OnInitListener() {

@Override

public void onInit(int status) {

if (status == textToSpeech.SUCCESS) {

// Toast.makeText(MainActivity.this,“成功输出语音”,

// Toast.LENGTH_SHORT).show();

// Locale loc1=new Locale(“us”);

// Locale loc2=new Locale(“china”);

textToSpeech.setPitch(1.0f);//方法用来控制音调

textToSpeech.setSpeechRate(1.0f);//用来控制语速

//判断是否支持下面两种语言

int result1 = textToSpeech.setLanguage(Locale.US);

int result2 = textToSpeech.setLanguage(Locale.SIMPLIFIED_CHINESE);

boolean a = (result1 == TextToSpeech.LANG_MISSING_DATA || result1 == TextToSpeech.LANG_NOT_SUPPORTED);

boolean b = (result2 == TextToSpeech.LANG_MISSING_DATA || result2 == TextToSpeech.LANG_NOT_SUPPORTED);

Log.i(“zhh_tts”, “US支持否?–》” + a +

“\nzh-CN支持否》–》” + b);

} else {

Toast.makeText(MainActivity.this, “数据丢失或不支持”, Toast.LENGTH_SHORT).show();

}

}

});

}

@Override

protected void onStop() {

super.onStop();

textToSpeech.stop(); // 不管是否正在朗读TTS都被打断

textToSpeech.shutdown(); // 关闭,释放资源

}

}

!!!

相信大家看了之后应该会很好的理解!!!

如果觉得《tts android Android系统自带的TTS实现语音播报》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。