0

我在整个应用程序中经常使用 Toast 对话框。但是,我注意到在切换活动后,对话框将继续保持可见,直到其计时器用完。

Toast.makeText( getApplicationContext(), R.string.toast_need_bt, Toast.LENGTH_LONG ).show();

我使用Toast.LENGTH_LONG是因为消息很长,如果用户决定阅读它,则需要更长的时间选项。然而,一旦用户使用了应用程序一次或两次,他们将不需要阅读 toast 消息,并且他们会快速地从一个活动转移到另一个活动。但是,即使从活动切换到活动,这些 toast 对话框也会保留在屏幕上。

如果当前 Activity 终止,有没有办法结束所有 Toast 对话框?

4

3 回答 3

2

完成/离开活动时调用cancel()toast 对象 这是Toast文档的链接

于 2013-01-03T21:26:16.627 回答
1

Toast.makeText返回一个Toast对象。调用cancel()此对象以取消它。查看此帖子以获取有关此主题的更多答案如何取消 Toast

于 2013-01-03T21:25:09.197 回答
1

尽管已经有一些关于如何使用 .cancel() 方法的答案,但我想为这个用例添加一些选项:

1) 在此处创建布局通知Cyril Mottier 的文章

2) 只显示前 X 次吐司

3) 创建一个带有“显示通知”复选框的对话框,以允许用户选择退出。

于 2013-01-03T21:29:54.127 回答