基本的handler原理这里就不说了,搜索一下 一大把,说下用法。
1. handler = new handler();
创建一个新的Runnable的对象runable,重载run方法,里面是执行体,对于我现在的问题,长按button,连续执行某个事件:
public void run()
{
doSomething();//要循环做的事件
handler.postDelayed(this,100); //这里就是 重复执行的代码 0.1s后继续 再次调用这个run
}
关于程序的开始 ,通过上面的函数
handler.post(runable);
关于程序的结束,把这个handler从队列中移除即可
handler.removeCallbacks(runable);
2.简单的一次handler使用
除了上面的方法之外,还可以在创建Handler的时候重载handlerMessage方法,这样就不用使用Runable的对象了
handler = new handler(){
public void handleMessage(...)
{//这里写要执行的代码
}
}
使用:handler.sendMessage(..)就可以。。