Finish activity after toast message disappears?

Tima picture Tima · Sep 30, 2011 · Viewed 31.4k times · Source

Does anybody know, if there is a possibility to do something (in my case finish activity) on toast message will be closed?

Answer

Lalit Poptani picture Lalit Poptani · Sep 30, 2011

You do that simply by creating a Thread that lasts as long as the Toast is displayed and then you can finish your Activity.

    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            // your other stuff
            Toast.makeText(this,"This is a Toast", Toast.LENGTH_LONG).show();
            thread.start();
}

Now create a thread that waits for (LENGTH_LONG = 3.5) or (LENGTH_SHORT = 2) seconds

    Thread thread = new Thread(){
             @Override
            public void run() {
                 try {
                    Thread.sleep(Toast.LENGTH_LONG); // As I am using LENGTH_LONG in Toast
                    Your_Activity.this.finish();
                } catch (Exception e) {
                    e.printStackTrace();
                }
             }  
           };