如何更新 Toast 值?
How to update Toast value?
我正在尝试更新代码中不同实例的 toast 值。
我试图像这样实例化一个对象:
Toast mToast = Toast.makeText(this,"",Toast.LENGTH_SHORT);
并在我的代码中需要时更新它的值。像这样:
mToast.setText("Hello!");
初始实例化似乎使我的代码崩溃。
有任何线索说明为什么会发生这种情况吗?
您应该创建一个接收字符串消息并显示它的函数。
public void showToast(String message) {
Toast.makeText(this, message, Toast.LENGTH_LONG).show();
}
然后随心所欲地调用它:
showToast("My message");
编辑
要在显示时更新 Toast:
Toast mToast = Toast.makeText(this, "text", Toast.LENGTH_LONG).show();
//...
mToast.cancel();
mToast.setText("Updated text");
mToast.show();
它对我有用,所以请提供您收到的任何错误消息:)
如果应用程序在您实例化 Toast 时崩溃,可能是因为构造函数中的上下文错误。
你在哪里声明它?一定要了解你的真实背景。
你不能真正更新Toast,但你可以隐藏toast并制作一个新的。
使用 mToast.cancel();
删除 Toast,然后使用
mToast.setText("New text");
mToast.show();
我正在尝试更新代码中不同实例的 toast 值。 我试图像这样实例化一个对象:
Toast mToast = Toast.makeText(this,"",Toast.LENGTH_SHORT);
并在我的代码中需要时更新它的值。像这样:
mToast.setText("Hello!");
初始实例化似乎使我的代码崩溃。
有任何线索说明为什么会发生这种情况吗?
您应该创建一个接收字符串消息并显示它的函数。
public void showToast(String message) {
Toast.makeText(this, message, Toast.LENGTH_LONG).show();
}
然后随心所欲地调用它:
showToast("My message");
编辑
要在显示时更新 Toast:
Toast mToast = Toast.makeText(this, "text", Toast.LENGTH_LONG).show();
//...
mToast.cancel();
mToast.setText("Updated text");
mToast.show();
它对我有用,所以请提供您收到的任何错误消息:)
如果应用程序在您实例化 Toast 时崩溃,可能是因为构造函数中的上下文错误。 你在哪里声明它?一定要了解你的真实背景。
你不能真正更新Toast,但你可以隐藏toast并制作一个新的。
使用 mToast.cancel();
删除 Toast,然后使用
mToast.setText("New text");
mToast.show();