Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在显示新的toast之前取消以前显示的toast_Java_Android - Fatal编程技术网

Java 在显示新的toast之前取消以前显示的toast

Java 在显示新的toast之前取消以前显示的toast,java,android,Java,Android,我有一个附加到按钮的函数,当按下该按钮时,会从arraylist中删除一个项目,然后显示一个toast,表示item Removed!。如果我按下移除按钮几次,所有的烤面包都会出现,看起来就像一个很长的烤面包显示屏。我想在每次展示新的祝酒词之前取消祝酒词。我在展示我的吐司 public void removeItem(View view) { Toast.makeText(getApplicationContext(),"Text",toast.LENGTH_LONG).show();

我有一个附加到按钮的函数,当按下该按钮时,会从arraylist中删除一个项目,然后显示一个toast,表示item Removed!。如果我按下移除按钮几次,所有的烤面包都会出现,看起来就像一个很长的烤面包显示屏。我想在每次展示新的祝酒词之前取消祝酒词。我在展示我的吐司

public void removeItem(View view)
{
    Toast.makeText(getApplicationContext(),"Text",toast.LENGTH_LONG).show();
}
现在我正在尝试制作一个toast对象,取消它,设置文本,然后在每次按下按钮时显示它。这样之前的祝酒词就取消了。不确定这是否是正确的方法

public void removeItem(View view)
{
    Toast toast = Toast.makeText(this,"",Toast.LENGTH_SHORT);
    toast.cancel();
    toast.setText("Text");
    toast.show();
}

结果什么也看不出来。有什么帮助吗?

您给出的示例不起作用,因为您正在对新创建的Toast对象实例调用cancel。您必须保留对当前显示的Toast的引用,并在再次显示之前取消它

Toast mMyToast // declared within the activity class
public void removeItem(View view)
{
    if(mMyToast!=null) mMyToast.cancel() // Avoid null pointer exceptions!
    mMyToast = Toast.makeText(this,"Text",Toast.LENGTH_SHORT);
    mMyToast.show();
}

给定的示例不起作用,因为您正在对Toast对象的新创建实例调用cancel。您必须保留对当前显示的Toast的引用,并在再次显示之前取消它

Toast mMyToast // declared within the activity class
public void removeItem(View view)
{
    if(mMyToast!=null) mMyToast.cancel() // Avoid null pointer exceptions!
    mMyToast = Toast.makeText(this,"Text",Toast.LENGTH_SHORT);
    mMyToast.show();
}
有几点想法:

1:你可以让文本更具体,这样他们就可以看到哪个项目被删除了,而不是像一个长长的祝酒词:删除的项目:鲍勃,删除的项目:玛丽

2:使烤面包片显示长度缩短

3:考虑一起跳过吐司。我想他们会在您单击时看到从列表中删除的项目。

一些想法:

1:你可以让文本更具体,这样他们就可以看到哪个项目被删除了,而不是像一个长长的祝酒词:删除的项目:鲍勃,删除的项目:玛丽

2:使烤面包片显示长度缩短


3:考虑一起跳过吐司。我想他们会在您单击时看到从列表中删除的项目。

效果很好。谢谢工作得很好。谢谢