首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android Handler(4)

2012-09-25 
Android Handler(四)可以看到在onCreate 方法中线程的ID是1(UI线程) 这与 HandlerMessage 进行消息处理时

Android Handler(四)
可以看到在onCreate 方法中线程的ID是1(UI线程) 这与 HandlerMessage 进行消息处理时是所作的线程ID是一样的,而消息发送的线程ID则为8非UI线程。

  使用Threadle进行实现

java代码:
public class ThreadHandlerrActivity extends Activity implements Callback, OnClickListener {

private TextView txt;

private Button btnStart, btnStop;

private Handler myHandler;

private TimerThread timerThread;

private int Total=30;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

txt = (TextView) findViewById(R.id.txt);

btnStart = (Button) findViewById(R.id.btnStartTime);

btnStop = (Button) findViewById(R.id.btnStopTime);

Log.d("ThreadId", "onCread:" + String.valueOf(Thread.currentThread().getId()));

myHandler = new Handler(this);

btnStart.setOnClickListener(this);

btnStop.setOnClickListener(this);

}

/** * 实现消息处理 */

@Override

public boolean handleMessage(Message msg) {

switch(msg.what) {

case 0: Bundle date=msg.getData();

txt.setText(String.valueOf(date.getInt("time")));

Log.d("ThreadId", "HandlerMessage:" + String.valueOf(Thread.currentThread().getId()));

Log.d("ThreadId", "msgDate:" + String.valueOf(date.getInt("time")));

break;

}

return false;

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.btnStartTime:

//自定义的线程

timerThread=new TimerThread(myHandler,60);

timerThread.start();

break;

case R.id.btnStopTime: timerThread.stop();

//timerThread.destroy();

break;

}

}



}

热点排行