android也可以实现把输入的文字朗读出来,使用到的是TextToSpeech,不过目前只支持5种语言:EnglishFrenchGermanItalianSpanish。(真遗憾,没有Chinese),对android系统要求为android 1.6(API8)以上:

public class SpeechTestActivity extends Activity {

/**TextToSpeech对象*/
private TextToSpeech mText2Speech;
/**确定按钮*/
private Button mBtn;
/**文本输入框*/
private EditText mEdt;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViewsById();
initListeners();
mBtn = (Button) findViewById(R.id.test_btn);
mEdt = (EditText) findViewById(R.id.test_edt);
mBtn.setEnabled(false);


}


private void initListeners() {
mText2Speech = new TextToSpeech(this, new OnInitListener() {

@Override
public void onInit(int status) {
if (status == TextToSpeech.SUCCESS) {/**如果装载TTS成功*/
int result = mText2Speech.setLanguage(Locale.ENGLISH);/**有Locale.CHINESE,但是不支持中文*/
if (result == TextToSpeech.LANG_MISSING_DATA/**表示语言的数据丢失。*/
|| result == TextToSpeech.LANG_NOT_SUPPORTED) {/**语言不支持*/
Toast.makeText(SpeechTestActivity.this, "我说不出口", Toast.LENGTH_SHORT).show();
} else {
mBtn.setEnabled(true);
mText2Speech.speak("I miss you", TextToSpeech.QUEUE_FLUSH,
null);
}
}
}
});

mBtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
mText2Speech.speak(mEdt.getText().toString(),
TextToSpeech.QUEUE_FLUSH, null);
}
});
}


private void findViewsById() {
mBtn = (Button) findViewById(R.id.test_btn);
mEdt = (EditText) findViewById(R.id.test_edt);
}


@Override
protected void onDestroy() {
if (mText2Speech != null) {
mText2Speech.stop();
mText2Speech.shutdown();
}
super.onDestroy();
}
}

更多相关文章

  1. Android中文API (39) —— AbsSpinner
  2. Android(安卓)应用语言设置的实现
  3. IT网站收藏
  4. IT网站收藏
  5. android 中文 api (64) —— Scroller
  6. Android(安卓)中文API (94) —— MediaController
  7. Android(安卓)Interface Definition Language (AIDL) android接
  8. React Native 中文版(含最新Android章节)
  9. Android(安卓)中文 API (26) —— SeekBar

随机推荐

  1. 如何找到一个SEO细分市场进行创业?
  2. 学习SEO创业机会怎样?
  3. Static Page-静态页面
  4. 做SEO时,需要了解哪些HTML标签 ?
  5. Nofollow属性的介绍和使用
  6. HTML表单与选择器学习与应用
  7. 网页的标题标签(Title Tag)要怎么写才是最
  8. 如何从SEO的角度选择好的域名
  9. 网站为什么被封?网站被封原因
  10. 如何选择好的域名