我在方法showText()中吐司;当我们调用该方法时,此方法显示吐司。在第二个Activity中我有一个按钮,当我点击按钮时,我的Toast必须显示。一切都很好,但当我点击两次或多次时,我的吐司将显示很长时间。我只想在点击按钮时再次播放节目,当我再次点击时,第一次吐司消失并再次显示。
public void showText(String msg) {
Toast.makeText(this, msg, 1000).show();
}
我怎么能这样做?
答案 0 :(得分:3)
您可以保留对刚刚创建的Toast的引用
,而不是调用show()Toast toast = Toast.makeText(this, msg, 1000);
then toast.show();
and then later, call some methods on the toast like toast.cancel();
http://developer.android.com/reference/android/widget/Toast.html
答案 1 :(得分:1)
你可以这样做
class YourActivity extends Activity implements OnclickListener
{
Toast toast = null;
void onclick(View v)
{
//call showText() method
}
// modify your showText as follows
public void showText(String msg) {
if(toast != null)
{
toast.cancel();
toast = null;
}
toast = new Toast(YourActivity.this);
toast.setText(msg);
toast.show()
}
}