2010-07-24 97 views
1

即使我销毁了源自它的活动,我仍然无法停止Toast消息。他们正在排队等待我继续下一个活动。如何关闭吐司消息和活​​动

+1

能告诉我们你是怎样提出的烤面包的消息,为什么你有这么多的人更重要的代码? – Pentium10 2010-07-24 07:55:14

+0

这个方法sayHello被多次调用,而敬酒只是继续和继续。即使在活动被破坏的情况下,我认为它仍会继续,但我并不是100%确定活动结束的程度。 private void sayHello(){ //随机选择一个hello。 int helloLength = HELLOS.length; String hello = HELLOS [RANDOM.nextInt(helloLength)]; // makeToast代码 Toast.makeText(getApplicationContext(),hello,Toast.LENGTH_LONG).show(); } – Droid 2010-07-25 09:56:02

回答

1

你将不得不跟踪你的敬酒。保持你的吐司物件周围,然后onPause或任何你通过它们循环调用toast.cancel()。这将关闭那个吐司。这也将允许您不太可能但可能的外部应用Toast消息被强制关闭。

0

Toast消息旨在通知用户重要的消息。这就是他们排队显示的原因。吐司消息不打算大量发送。 (大数大于1)如果你有这么多的信息要传达给用户,你应该以不同的方式进行。正如他们在面包店所说的那样,这是饼干崩溃的方式。

2

您可以创建一个toast对象并在onpause()方法中停止它,但问题在于排队的toast消息。回采后你在敬酒在onPause对象仍然可以看出U敬酒消息 实现:

Toast showToastMessage; 
showToastMessage=Toast.makeText(this.this, "Toast message", Toast.LENGTH_LONG); 
showToastMessage.show(); 

@Override 
     protected void onPause() { 
       super.onPause(); 
       if(showToastMessage!=null) 
       { 
       showToastMessage.cancel(); 
       } 
}