# 定时器 框架提供了定时器功能,只要继承了BaseApp或Activity注册了定时器onTimer方法就会回调: ~~~ virtual bool onTimer(int id); ~~~ ~~~ void HelloActivity::onCreate() { Activity::onCreate(); // 注册id: 10、时间间隔: 100ms的定时器 registerTimer(10, 100); } bool HelloActivity::onTimer(int id) { // cc文件中回调接口 return onUI_Timer(id); } ~~~ 注册的代码UI Tool已帮我们自动生成,默认注释掉,如果需要用到定时器功能,需手动打开注释,之后在cc文件中onUI_Timer处理相应的逻辑: ~~~ static bool onUI_Timer(int id) { // Tips:添加定时器响应的代码到这里,但是需要先打开 activity/HelloActivity.cpp onCreate 函数里面的registerTmer // id 是定时器设置时候的标签,这里不要写耗时的操作,否则影响UI刷新,ruturn:[true] 继续运行定时器;[false] 停止运行当前定时器 return true; } ~~~ 反注册: ~~~ void unregisterTimer(int id); ~~~ 注意: 注册、反注册、回调接口内部都使用了锁,所以不能在onUI_Timer的回调接口里调用 registerTimer 或 unregisterTimer接口,否则会导致死锁,如果需要在onUI_Timer中停止当前定时器,返回false即可
<