您的位置:首页 > 其它

自动朗读 TTS

2013-10-02 15:38 120 查看
public class MainActivity extends Activity {

TextToSpeech tts;
EditText say;
Button speech,record;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tts=new TextToSpeech(this, new OnInitListener() {

@Override
public void onInit(int status) {
if(status==TextToSpeech.SUCCESS)
{
int result=tts.setLanguage(Locale.getDefault());
if(result!=TextToSpeech.LANG_COUNTRY_AVAILABLE&&result!=TextToSpeech.LANG_AVAILABLE)
{
Toast.makeText(MainActivity.this, "TTS暂时不支持这种语言的朗读", Toast.LENGTH_SHORT).show();
}
}
}
});
findid();
}

private void findid() {
// TODO Auto-generated method stub
say=(EditText) findViewById(R.id.say);
speech=(Button) findViewById(R.id.speech);
record=(Button) findViewById(R.id.record);
speech.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
tts.speak(say.getText().toString(), TextToSpeech.QUEUE_ADD, null);
}
});
record.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
tts.synthesizeToFile(say.getText().toString(), null, "/mnt/sdcard/sound.wav");
Toast.makeText(MainActivity.this, "声音记录成功!", Toast.LENGTH_SHORT).show();
}
});
}

@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
if(tts!=null)
{
tts.shutdown();
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: