2011-01-23 59 views
2

在不调用任何UI更改的情况下调用TextToSpeech的建议方式是什么?给出的示例都绑定到活动,并且活动的默认行为是显示其自己的UI。在没有任何UI显示的情况下调用TextToSpeech活动

我想通过我的主要活动通过意图调用TextToSpeechActivity。我不希望UI改变。我希望TextToSpeech听起来没有任何改变。这是迄今为止我所拥有的。

public class MyActivity extends Activity { 

    public void onClick(View v) { 
     Intent intent = new Intent(this, TextToSpeechActivity.class); 
     startActivity(intent); 
    } 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
    } 
} 

每次点击时,主UI将被替换为TextToSpeech活动的UI。不,我不希望主Activity执行TextToSpeech.OnInitListener。主体中已经有足够的代码。已经够混乱了。

回答

2

您不需要开始新的活动。带TTS的毛茸茸的东西是,您需要先完成一些初始化,然后才能使用它。这样做,例如在onClick()之内根本不起作用。 我实现了在Zwitscher: https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/OneTweetActivity.java#L317 speak()从UI上的一个按钮调用,并在需要初始化从onCreate()中调用:https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/OneTweetActivity.java#L62 不要忘记关闭TTS系统,如果不再需要: https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/OneTweetActivity.java#L394

HTH(让我知道是否有更好的解决方案)

相关问题