Android 开发笔记——定时器
做惯了java,net,定时器就会想到timer,由于Android支持java开发所以可以使用java中的Timer。
但Android提供了它特有的实现方式:android.os.Handler 中的 postXXX 和sendXXX 等方法,
至于倒计时:android.os.CountDownTimer 使用起来更方便
更多详细实现参考:http://www.cnblogs.com/playing/archive/2011/03/24/1993583.html
以下是Hanler+Runnable 实现地图位置的实时更新时的部分代码
//创建一个Handler final Handler handler = new Handler(); //创建一个Runnable Runnable task = new Runnable() { public void run() { handler.postDelayed(this, 30000); Log.i(tag, "延迟30秒执行线程"); try { //获取服务器上的位置信息 更新坐标 HashMap<String,Integer> hashmap = new HashMap<String,Integer>(); List<APKGPSInfo> templist=com.comm.GPSDataHanler.GetGPSInfoList(user.getID(), 1, "", hashmap);//获取点集合 List<OverlayItem> listitem=GetItemList(templist); //获取点集合 OverItemT overitem = new OverItemT(marker,3,listitem);//生成覆盖物图层ItemizedOverlay mMapView.getOverlays().clear();//清除覆盖物 mMapView.getOverlays().add(overitem); // 添加覆盖物 ItemizedOverlay实例到mMapView mMapView.postInvalidate();//刷新地图界面 如何不执行该行 会出现位置无法自动更新 的问题 } catch (Exception e) { e.printStackTrace(); } } }; handler.post(task);//启动定时器