Stop all toast messages when going to another screen in Android

android, toast

Solution

Hi I have the same problem. The problem is that the Toast overlaps e.g. if you press 10 times the Toast will stay 10 x LENGTH_SHORT. The only solution I came with was to control the time the Toast is shown by myself. When you show a Toast just keep a track of the last time you show it, it's still on the screen don't show it again. In your worst case the Toast will be visible only LENGTH_SHORT time.

Problem

I am displaying a simple Toast when I click a button. My issue is, when I click on a button multiple times, that Toast message keeps displaying until I get to the main screen. I would like to stop the Toast when I get to the main screen and kill the Toast message in the corresponding activity. I have attached a screenshot. I have written code as follows: ``` 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(); } } ``` How can I do it?

Original source