How to execute a function every two seconds in Jav

2019-01-25 20:34发布

问题:

I'm trying to execute a chunk of Java code in my Android program every two seconds. My code currently looks like this:

       LinearLayout.postDelayed(new Runnable() { 
            public void run() { 

            //Do stuff here

            } 
       }, 2000);

Unfortunately, this only runs once after two seconds and then never runs again. How could I get it to run every two seconds?

Thanks in advance for all your help.

回答1:

Try this:

   LinearLayout.postDelayed(new Runnable() { 
        public void run() { 

        //Do stuff here

            // assuming LinearLayout is enclosing class
            LinearLayout.this.postDelayed(this, 2000);
        } 
   }, 2000);


回答2:

Put your code in a loop. Or you could look into Alarms.



回答3:

you can try a timer

Here is another example



回答4:

 new Timer().scheduleAtFixedRate(new TimerTask() {
        @Override
        public void run() {
            // Enter your code which you want to execute every 2 second
        }
    }, 0, 2000);//put here time 1000 milliseconds = 1 second