android - 在 Android 中转到另一个屏幕时停止所有 toast 消息

标签 android toast

enter image description here enter image description here

我在单击按钮时显示一个简单的 Toast。我的问题是,当我多次点击一个按钮时,Toast 消息会一直显示,直到我到达主屏幕。我想在到达主屏幕时停止 Toast,并在相应的 Activity 中终止 Toast 消息。我附上了截图。

我写的代码如下:

public class Main extends Activity {

    Dialog d;
    Toast t;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        ((Button)findViewById(R.id.button1)).setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                t = Toast.makeText(Main.this, "you clicked on button!", Toast.LENGTH_LONG);
                t.show();
            }
        });
    }
    @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
        t.cancel();
    }
}

我该怎么做?

最佳答案

您好,我也遇到了同样的问题。问题是 toast 重叠,例如如果按 10 次,Toast 将保持 10 x LENGTH_SHORT。我带来的唯一解决方案是控制自己显示 Toast 的时间。当您显示 Toast 时,只需跟踪上次显示它的时间,它仍在屏幕上,不要再次显示它。在最坏的情况下,Toast 只会显示 LENGTH_SHORT 时间。

关于android - 在 Android 中转到另一个屏幕时停止所有 toast 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5295765/

相关文章:

java - 在另一个 toast 替换它之前,如何确保 toast 在屏幕上显示特定时间?

c# - Win8 : Hiding Toast Notifications

java - ArrayList 空指针异常

android - 如何在安卓模拟器中使用蓝牙?

java - Firebase 获取值并更改/更新它

Android:访问硬件相机预览帧数据而不绘制它们

java - SurfaceView 中的 Toast

javascript - 使用 json 字符串显示 toast 消息时出现问题

android - Searchview - 隐藏通过按键出现的 toast

安卓通知生成器 : How to setSound so that sound plays in a looper