Android中Handler消息处理
程序员文章站
2022-07-14 18:59:16
...
作用:
1.在主线程中获取并处理消息
2.在任意线程中发送消息
注意:
handleMessage(Message msg):处理消息的方法。通常重写该方法来处理消息,在发送消息时,该方法会自动回调。
发送消息的方法有很多种:sendEmptyMessage(int what)、sendEmptyMessageDelayed(int what ,long delayMillis)等,执行后会自动回调handleMessage(Message msg)方法。
例1:
public class MainActivity extends Activity {
final int TIME = 60; //定义时间长度
final int TIMER_MSG = 0x001; //定义消息代码
private ProgressBar timer; //声明水平进度条
private int mProgressStatus = 0; //定义完成进度
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
timer = (ProgressBar) findViewById(R.id.timer); //获取进度条组件
handler.sendEmptyMessage(TIMER_MSG); //发送消息,启动进度条
}
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
//当前进度大于0
if (TIME - mProgressStatus > 0) {
mProgressStatus++; //进度+1
timer.setProgress(TIME - mProgressStatus); //更新进度条的显示进度
handler.sendEmptyMessageDelayed(TIMER_MSG, 1000); //延迟一秒发送消息
} else {
Toast.makeText(MainActivity.this, "时间到!游戏结束!", Toast.LENGTH_SHORT).show(); //提示时间已到
}
}
};
}
上一篇: day4学习笔记
推荐阅读
-
Android中3种图片压缩处理方法
-
Android应用中Back键的监听及处理实例
-
Android中handler倒计时
-
Android lombok学习,分享写demo过程中的处理
-
Android中的多线程-Handler
-
Android如何理解和使用线程与进程(异步消息处理)
-
Android中Fragment的分屏显示处理横竖屏显示的实现方法
-
从Handler.postDelayed来看看Android怎么实现处理延时消息
-
Android消息处理机制Looper和Handler详解
-
Android Studio 之 Android消息机制 之简单Demo --- 使用Handler和Message类来完成消息传递