Android - 两个onClickListener一个按钮

问题描述:

我正在使用iSpeech的TTS API和他们的示例Android项目,他们有两个onClickListeners按钮,一个用于启动语音,一个用于停止。我想在android屏幕上保留一个按钮以获得更多空间,这样如果语音停止,按下按钮将启动它,如果它已经启动,按下按钮将会停止它。Android - 两个onClickListener一个按钮

有相当多的问题类似于这个答案,指出最好将它保留给一个听众一个按钮,但我不是很满意,因为问题是在多个听众,而我的只有两个。

所以,我真的坚持两个按钮(我不希望),或者有没有办法用一个按钮来管理这个?

编辑 看来我的想法受到了例子的限制。对于这种情况,一个听众似乎已经足够了。谢谢你的答案:)

+0

为什么不从一个侦听器检查按钮/应用程序的状态? – 2012-08-14 09:01:05

+0

为什么不使用'ToggleButton'? – JiTHiN 2012-08-14 09:01:40

+0

@rIHaNJiTHiN我不知道有像ToggleButton这样的东西,我只是检查了一会儿,它似乎是一个选项,我可以使用:)我会试试看。 – consprice 2012-08-14 09:11:25

你可以有一个监听器,并配有带标志的if-else语句使用相同的按钮开始和停止。类似这样的:

if(isSpeaking) 
{ 
    //Stop speaking 
    isSpeaking = false; 
} 
else 
{ 
    //Start speaking 
    isSpeaking = true; 
} 

你也可以使用setText()来改变按钮上的文本,只要你开始和停止说话。

它非常简单,首先点击更改按钮的文本停止,onClickListener使用if - else来启动和停止。首先进入任何一个条件,改变按钮的文字。

您可以用按钮对其进行管理和一个OnClickListener ... JST与按钮上的文字打