Android中Handler消息处理
16lz
2021-01-26
作用:
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(); //提示时间已到 } } };}
更多相关文章
- Android(安卓)自定义View总结 —— LayoutParams
- Android的3种Notification实现方式详解
- Android(安卓)自定义控件一 带圆形进度的按钮 ControlButton2
- Android(安卓)App 实现分享功能及将应用加入分享列表 (分享功能
- 关于Android中自定义ClassLoader耗时问题的追查
- Intent总结06 category属性
- Android(安卓)setTag方法定义key的问题
- android 去掉标题栏 和 全屏 方法
- Android(安卓)自定义Galley中图片未居中显示问题