android高手之路之使用runable需要注意的问题

看一段代码:

package com.example.threaddemo;import android.os.Bundle;import android.os.Handler;import android.app.Activity;import android.util.Log;import android.view.Menu;public class ThreadDemo extends Activity {private static final String TAG = "ThreadDemo";private int count = 0; private Handler mHandler = new Handler(); private Runnable mRunnable = new Runnable() {@Overridepublic void run() {Log.e(TAG, Thread.currentThread().getName() + " " +count);++count;setTitle("" +count);//Performed once every two secondsmHandler.postDelayed(mRunnable, 2000);}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_thread_demo); mHandler.post(mRunnable); }}然后我们按返回键退出。

再进来。发现问题:

就是说,除了之前运行的runable,又多了一个

如何解决,,在ondrestroy方法中添加

mHandler.removeCallbacks(mRunnable);

@Overrideprotected void onDestroy() {mHandler.removeCallbacks(mRunnable);super.onDestroy();}

抱最大的希望,为最大的努力,做最坏的打算

android高手之路之使用runable需要注意的问题

相关文章:

你感兴趣的文章:

标签云: