Android之循环执行次数のHandler&Runnable

来源:互联网 发布:deform软件下载 编辑:程序博客网 时间:2024/05/20 05:09

最近做QQ相册,QQ开放的api只能用他的api,连接口拿不到,而且都异步处理好了!但是我用到定时请求,以至于不能将其异步回调放到子线程中处理,

下边是用另一种思路解决问题:

public class AndroidTest_HandlerActivity extends Activity {


    private Handler handler = new Handler();

    private Runnable runnable =new Runnable(){

//推送runnable,定期2s执行一次

         @Override19 public void run() {            

 // TODO Auto-generated method stub

            Log.e("计时后", printCurTime());

             handler.postDelayed(runnable, 2000);

        }

            };

    private Runnable runRemove =new Runnable()

{//移除runnable,在6s后移除        

 @Override

        public void run() {

             // TODO Auto-generated method stub

                        handler.removeCallbacks(runnable);

         }

             };

     private String printCurTime(){//获取当前时间

         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//格式样式

         Date date = new Date(System.currentTimeMillis());//建立当前日期

         //format.format(date)格式化日期时间

         return format.format(date);

     }

     @Override

     publicvoid onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

         setContentView(R.layout.main);

         Log.e("计时前", printCurTime());

         handler.post(runnable);//定期执行

         handler.postDelayed(runRemove, 6000);//过6秒后执行

            }

 }

复制代码

 

 

结果:

  这两句前后没多大区别。

handler.postDelayed(runRemove, 6000)放后面。


0 0