Android中用TTS语音朗读一段英文

     Android中自带的TTS语音服务,现在不能读取汉字,下面是我用来读取一段英文的代码,希望对大家有帮助:

package com.yu;

import java.util.Locale;

import android.app.Activity;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class TTSTestActivity extends Activity 
{
	Button  button;
	EditText  edittext;
	TextToSpeech mSpeech;
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        edittext=(EditText)findViewById(R.id.edittext);
        button=(Button)findViewById(R.id.button);
        button.setEnabled(false);
        mSpeech = new TextToSpeech(this, new OnInitListener() 
        {
            @Override
            public void onInit(int status)
            {
                if (status == TextToSpeech.SUCCESS)
                {
                    int result = mSpeech.setLanguage(Locale.ENGLISH);//设置只能朗读英文
                    if (result == TextToSpeech.LANG_MISSING_DATA|| result == TextToSpeech.LANG_NOT_SUPPORTED)
                    {//要是结果没值,就在后台打印出来
                        Log.e("lanageTag", "not use");
                    } 
                    else 
                    {//模拟机在启动时朗读下面的英文
                        button.setEnabled(true);
                        mSpeech.speak("Hello World,Hello Android", TextToSpeech.QUEUE_FLUSH, null);
                    }
                }
            }
        });
        button.setOnClickListener(new Button.OnClickListener() 
        {
            @Override
            public void onClick(View v) 
            {//读取文本框里输入的英文
                mSpeech.speak(edittext.getText().toString(),TextToSpeech.QUEUE_FLUSH, null);
            }
        });
    }
	@Override
	protected void onDestroy() 
	{
		super.onDestroy();
		if (mSpeech != null) 
		{
            mSpeech.stop();
            mSpeech.shutdown();
        }
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值