Handler的初步使用

来源:互联网 发布:mysql select查询语句 编辑:程序博客网 时间:2024/05/22 14:51

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">Handler是安卓操作系统的一个类.用于实现线程,有handler.post()和handler.removeCallbacks()方法,其中的参数可以是Runnable对象.在Runnable中复写run()函数,run()中的内容会在线程执行时被执行</span>
<span style="font-family:Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"></span><pre name="code" class="java">package com.example.handlertest;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {private Button startButton = null;private Button endButton = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);startButton = (Button)findViewById(R.id.startButton);endButton = (Button)findViewById(R.id.endButton);startButton.setOnClickListener(new StartButtonListener());endButton.setOnClickListener(new EndButtonListener());}class StartButtonListener implements OnClickListener{@Overridepublic void onClick(View v) {// TODO Auto-generated method stubhandler.post(updateThread);}}class EndButtonListener implements OnClickListener{@Overridepublic void onClick(View v) {// TODO Auto-generated method stubhandler.removeCallbacks(updateThread);System.out.println("End");}}Handler handler = new Handler();Runnable updateThread = new Runnable(){@Overridepublic void run() {// TODO Auto-generated method stubSystem.out.println("UpdateThread");handler.postDelayed(updateThread, 3000);}};}

0 0
原创粉丝点击