android Handler小结
来源:互联网 发布:股票量化交易软件 编辑:程序博客网 时间:2024/06/05 07:28
Handler的使用在android开发中给我们提供了太多的便捷,它的主要作用有两个:
在新启动线程中发送消息;
在主线程中获取,处理消息;
今天这里总结一下,在项目开发中经常使用到Hanlder的几种实例:
1,延时执行函数A,只执行一次
定义消息变量:
private final static int MSG_A_START = 0x0001;
private int delayTime = 1000;
private Handler mHandler = null;
调用:
mHandler=new Handler()
{
@Override
public void handleMessage(Message msg) {
switch (msg.what)
{
case MSG_A_START :
A();
}
}
};
if (true) {
mHandler.sendEmptyMessageDelayed(MSG_A_START , delayTime );
}
2,某段时间内一直触发执行函数A,执行N次,可设置时间间隔
手指按下时执行,抬起时停止:
手指按下:
if (mHandler != null) {
Message message = mHandler.obtainMessage(MSG_A_START );//获取消息
mHandler.sendMessage(message);//立刻出发
mHandler.sendMessageDelayed(message, delayTime );//以delayTime 时间间隔触发
}
手指抬起:
if (mHandler != null) {
mHandler.removeMessages(MSG_A_START );
}
声明Handler:
mHandler=new Handler()
{
@Override
public void handleMessage(Message msg) {
switch (msg.what)
{
case MSG_A_START :
A();
}
}
};
3,与Timer结合,定义计时器,周期执行A
只需要给Handler增加计时器:
new Timer().schedule(new TimerTask()
{
@Override
public void run() {
// TODO Auto-generated method stub
mHandler.sendEmptyMessage(MSG_A_START);
}
},0,delayTime);//以delayTime时间间隔发送消息执行A,此方法可以显示循环动画播放
以上三种情况是我们比较常用到的,一起学习,一起总结下呵呵!
- android 中handler小结
- android Handler小结
- Android Handler 小结
- Android Looper和Handler小结
- Android线程Handler小结(一)
- android的looper,handler消息小结
- android的looper,handler消息小结
- android Handler发送与处理消息小结
- Android学习之Handler使用小结
- Handler小结
- Handler 小结
- Handler小结
- Handler小结
- Handler的小结
- Handler机制学习小结
- Handler使用小结
- Looper、handler、message小结
- Handler发送消息小结
- 【Android学习】Android动画效果--Animations(1)
- 《算法导论》笔记 第8章 8.2计数排序
- ndk编写android终端hello world
- <一> cocos2dx不同的坐标系,锚点
- 访问资源库
- android Handler小结
- 如何根据手机屏幕尺寸做不同的网页呢
- NSTimer在后台运行
- 关于图片或者文件在数据库的存储方式归纳
- Leetcode_candy
- 编译asm形式的helloworld在android下运行
- Linux3.4内核Nand Flash驱动的移植
- 设置端口可以重用 setsockopt()
- SWISS-PROT Format说明