类说明
CrossApp中的任务调度,也就是通常所说的定时器。
基类
CAObject
CAScheduler 方法(点击查看方法介绍)
| 方法 | 说明 |
| schedule | 启动定时器 |
| schedule | 方法重载,启动定时器 |
| unschedule | 移除定时器 |
| unscheduleAllForTarget | 移除指定对象的所有定时器 |
| unscheduleAll | 移除当前对象的所有定时器 |
| isScheduled | 是否存在指定对象的定时器 |
| getScheduler | 获取一个CAScheduler单例 |
| update | 更新 |
| pauseTarget | 暂停指定对象的定时器 |
| resumeTarget | 恢复指定对象的定时器 |
| isTargetPaused | 指定对象定时器是否被暂停 |
| pauseAllTargets | 暂停所有定时器 |
| pauseAllTargetsWithMinPriority | 暂停所有定时器,以最小级优先 |
| resumeTargets | 恢复对象集合的所有定时器 |
CAScheduler 方法说明
static void schedule(SEL_SCHEDULE pfnSelector, CAObject *pTarget, float fInterval,unsigned int repeat, float delay, bool bPaused)
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| SEL_SCHEDULE | pfnSelector | 定时器的回调函数 |
| CAObject* | pTarget | 定时器所属对象 |
| float | fInterval | 调度定时器的时间间隔 |
| unsigned | repeat | 除第一次外,调度的次数 |
| float | delay | 第一次调度前的延迟时间 |
| bool | bPaused | 定时器是否为暂停状态 |
解释:启动定时器
示例:
progress = CAProgress::create();
progress->setFrame(CCRect(winRect.size.width*0.5-100,winRect.size.height*0.5+100,200,16));
progress->setProgresstrackColor(ccYELLOW);
this->getView()->addSubview(progress);
CAScheduler::schedule(schedule_selector(FifthViewController::changeValue),this,1,3,4,false);
void FifthViewController::changeValue(float interval)
{
float currentValue = progress->getProgress();
progress->setProgress(currentValue+0.1);
}
static void schedule(SEL_SCHEDULE pfnSelector, CAObject *pTarget, float fInterval, bool bPaused = false);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| SEL_SCHEDULE | pfnSelector | 定时器的回调函数 |
| CAObject* | pTarget | 定时器所属对象 |
| float | fInterval | 调度定时器的时间间隔 |
| bool | bPaused | 定时器是否为暂停状态 |
解释:方法重载,启动定时器
static void unschedule(SEL_SCHEDULE pfnSelector, CAObject *pTarget);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| SEL_SCHEDULE | pfnSelector | 定时器的回调函数 |
| CAObject* | pTarget | 定时器所属对象 |
解释:移除定时器
static void unscheduleAllForTarget(CAObject *pTarget);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| CAObject* | pTarget | 定时器所属对象 |
解释:移除指定对象的所有定时器
static void unscheduleAll(void);
返回值:void
参数:
解释:移除当前对象的所有定时器
static bool isScheduled(SEL_SCHEDULE pfnSelector, CAObject *pTarget);
返回值:bool
参数:
| 类型 | 参数名 | 说明 |
| SEL_SCHEDULE | pfnSelector | 定时器的回调函数 |
| CAObject* | pTarget | 定时器所属对象 |
解释:是否存在指定对象的定时器
static CAScheduler* getScheduler();
返回值:CAScheduler*
参数:
解释:获取一个CAScheduler单例
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| float | dt | 数据 |
解释:更新定时器
void pauseTarget(CAObject *pTarget);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| CAObject* | pTarget | 定时器所属对象 |
解释:暂停指定对象的定时器
void resumeTarget(CAObject *pTarget);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| CAObject* | pTarget | 定时器所属对象 |
解释:恢复指定对象的定时器
bool isTargetPaused(CAObject *pTarget);
返回值:bool
参数:
| 类型 | 参数名 | 说明 |
| CAObject* | pTarget | 定时器所属对象 |
解释:指定对象定时器是否被暂停
返回值:CCSet*
参数:
解释:暂停所有定时器
CCSet* pauseAllTargetsWithMinPriority(int nMinPriority);
返回值:CCSet*
参数:
| 类型 | 参数名 | 说明 |
| int | nMinPriority | 最小级优先 |
解释:暂停所有定时器,以最小级优先
void resumeTargets(CCSet* targetsToResume);
返回值:void
参数:
| 类型 | 参数名 | 说明 |
| CCSet* | targetsToResume | 恢复目标 |
解释:恢复对象集合的所有定时器