[Turn] Postdelayed method for Handler

Source: Internet
Author: User

This is a function that can create multi-threaded messages
How to use:
1, first create a handler object

Handler handler=new Handler ();

2, then create a Runnable object
Runnable runnable=new Runnable () {
@Override
public void Run () {
TODO auto-generated Method Stub
To do, here again call this Runnable object to implement a timer operation every two seconds
Handler.postdelayed (this, 2000);
}

};

3, call this Runnable object after two seconds using the Postdelayed method
Handler.postdelayed (Runnable, 2000);

It actually implements a 2s timer.

4, if you want to turn off this timer, you can do this
Handler.removecallbacks (runnable);

Of course, you can also make an alarm clock to remind the function of the delay, for example, first use MediaPlayer to play the alarm sound,
If you do not remember, is stopped playing, the next time 5 minutes after the playback, and then stopped, the next 4 minutes after the play,
..................
As long as the time to change the delay can be achieved, with a static object will be relatively easy to operate.

is an asynchronous effect, but the execution of runnable is in the same thread as the handler object
If the thread on which it is located is a UI thread, the runnable cannot perform time-consuming operations, or the ANR
A few days ago our own equipment is very card, card to jump interface need less than 1 seconds of time, I put the jump action in runnable inside, outside plus pop-up progress prompt box

Note: For illustrative purposes

public class XXX extends Activity

{
@Override
public void OnCreate (Bundle savedinstancestate)

{
Super.oncreate (savedinstancestate);
Requestwindowfeature (Window.feature_no_title);
Setcontentview (r.layout.loading);//Display 1th screen
Handler Handler = new Handler ();
handler.postdelayed (New Splashhandler (), 2000);//delay 2 seconds, then run the Splashhandler ()
}

Class Splashhandler implements Runnable

{
public void Run ()

{
StartActivity (New Intent (Getapplication (), secondactivity.class)); Display the 2nd screen
XXX.this.finish (); End 1th Screen

}
}
}

[Turn] Postdelayed method for Handler

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.