Android(安卓)Timer 更好方法
16lz
2021-12-04
Android 的Timer 一般如下面所写
Timer timer = new Timer();TimerTask task = new TimerTask() {public void run() {Message message = new Message();message.what = 1;handler.sendMessage(message);}};
final Handler handler = new Handler() {public void handleMessage(Message msg) {switch (msg.what) {case 1:Log.e("Timer", "Timer");update();break;}super.handleMessage(msg);}};
protected void onDestroy() {if (timer != null) {timer.cancel();timer = null;}super.onDestroy();}
最重要一点是timer.schedule(task, 1000, 5000);如果设置为timer.schedule(task, 5000)是不会工作的。
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);this.setContentView(R.layout.main); timer.schedule(task, 1000, 5000); }
但更好的方法是通过下面的代码
private Handler handler = new Handler();private Runnable runnable = new Runnable() {public void run() {update();handler.postDelayed(this, 1000);}};
开始Timer
handler.postDelayed(runnable, 1000);
停止Timer
handler.removeCallbacks(runnable);
可浏览下面的资料:http://www.muktosoft.com/blog/timer-in-android-the-better-way/
更多相关文章
- android中webview开启了硬件加速后会出现闪烁问题
- Android(安卓)Timer 更好方法
- Android(安卓)文件管理器 Android文件管理器源代码
- googleMap----放大,缩小,东南西北,四种视图切换代码
- Android应用程序进程启动过程的源代码分析
- Android(安卓)中自定义控件和属性(attr.xml,declare-styleable,T
- 移动应用开发:如何创建自定义Android代码模板
- Android(安卓)用代码动态添加View(ViewGroup.addView()),并进行动
- WCF 实例 —— Android(安卓)短信助手 (WCF + Android) (2)