This is my sample code:
public class MainActivity extends Activity {
Button buttonClick;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttonClick = (Button) findViewById(R.id.buttonClick);
buttonClick.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "Here is the Toast", Toast.LENGTH_SHORT).show();
}
});
}
}
When ever I click on the Button, the Toast message is displayed. That's fine.
My question is:
When I click multiple times
on the button and then close the application, then the Toasts continue starting their work of displaying messages.
And I don't want that.
I want if the application is closed then Toasts should also stop displaying their messages.
Can anybody tell me what I have to do for this???
If you call toast. dismiss without argument, all the displayed toasts will be removed.
Toast. makeText returns a Toast object. You can call cancel() on this object to cancel it, then show the new one.
Toast. makeText returns a Toast object. Call cancel() on this object to cancel it.
Google adopted the concepts of notification drawer and toast popup messages for user notifications as basic components of its Android operating system.
I want if the application is closed then Toast should also stop displaying the message.
In your case call cancel()
to Toast
object to cancel it within onDestroy()
method.
Here is a similar example.
Updated!
I tested OP solution but no result.
.hide()
and .cancel()
method is available for Toast
but seem they are not working. The solution is, you have to create your own custom view which acts like a Toast
and then you can cancel all Toasts
when the Activity
finishes.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With