首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TextToSpeech在Android2.2和2.3手机上不工作

TextToSpeech在Android2.2和2.3手机上不工作
EN

Stack Overflow用户
提问于 2013-09-30 06:36:43
回答 2查看 241关注 0票数 0

我正在做的是我有一个EditText和一个按钮。当我写一些东西并按下按钮时,应用程序就会说出这些话。这是很好的工作在模拟器,但当我运行它在电话,它不说话。我不知道有什么问题。是有密码的还是我需要在电话里换点东西。下面是我使用的代码。

代码语言:javascript
复制
Button btn1;
EditText txt1;
static final String[] texts={""};
TextToSpeech tts;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn1=(Button)findViewById(R.id.button1);
    txt1=(EditText)findViewById(R.id.editText1);
    btn1.setOnClickListener(this);
    tts=new TextToSpeech(MainActivity.this,new TextToSpeech.OnInitListener() {

        @Override
        public void onInit(int status) {
            // TODO Auto-generated method stub
            if(status!=TextToSpeech.ERROR){
                tts.setLanguage(Locale.getDefault());
            }
        }
    });
}

    @Override
public void onClick(View arg0) {
    // TODO Auto-generated method stub
        //Random r=new Random();
        //String random=texts[r.nextInt(3)];
        String txt=txt1.getText().toString();
        if(txt!="")
        tts.speak(txt, TextToSpeech.QUEUE_FLUSH, null);     
}

我检查了其他类似的问题,但都没有令人满意的答案。这是获得技术帮助的最好地方。请提出解决这个问题的办法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-02 15:15:57

我找到解决办法了。我的手机上没有安装TTS语言,所以我手动完成了:设置->语言和输入->文本到语音输出->安装语音数据。

票数 1
EN

Stack Overflow用户

发布于 2013-09-30 06:50:45

请尝试

if(!txt.equals("")) tts.speak(txt,TextToSpeech.QUEUE_FLUSH,null);

还可以在使用关闭()方法后释放tts对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19087827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档