早教吧作业答案频道 -->其他-->
iOS如何在一个函数执行过程中,在某一步停下来,等待一个消息,或通知之类的东西,然后继续执行就如同做一个nstimer,把那个固定时间改成一个条件.求教.
题目详情
iOS 如何在一个函数执行过程中,在某一步停下来,等待一个消息,或通知之类的东西,然后继续执行
就如同做一个nstimer,把那个固定时间改成一个条件.求教.
就如同做一个nstimer,把那个固定时间改成一个条件.求教.
▼优质解答
答案和解析
用线程吧 貌似没又windows下边的messagebox那样的函数
-(void)timerArrived:(id)sender{
timerFinished = YES;
}
-(void) waitTimeForSeconds:(NSTimeInterval) times{
timerFinished = NO;
NSTimer *delayForProgram = [NSTimer scheduledTimerWithTimeInterval:times target:self selector:@selector(timerArrived:) userInfo:nil repeats:NO];
while (!timerFinished) {
[[NSRunLoop currentRunLoop] addTimer:delayForProgram forMode:@"NSDefaultRunLoopMode"];
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[[NSDate alloc] initWithTimeIntervalSinceNow:times]];
}
[delayForProgram release];
}
这里时间按秒计算 当然也可以无止尽等待
-(void)timerArrived:(id)sender{
timerFinished = YES;
}
-(void) waitTimeForSeconds:(NSTimeInterval) times{
timerFinished = NO;
NSTimer *delayForProgram = [NSTimer scheduledTimerWithTimeInterval:times target:self selector:@selector(timerArrived:) userInfo:nil repeats:NO];
while (!timerFinished) {
[[NSRunLoop currentRunLoop] addTimer:delayForProgram forMode:@"NSDefaultRunLoopMode"];
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[[NSDate alloc] initWithTimeIntervalSinceNow:times]];
}
[delayForProgram release];
}
这里时间按秒计算 当然也可以无止尽等待
看了iOS如何在一个函数执行过程中...的网友还看了以下:
社区建设存在问题的原因是什么存在问题及分析1、社区建设的体制机制问题仍然存在,成为限制社区建设进一 2020-06-20 …
小李因停步行上十楼,他从一楼到五楼花了60秒,假设小李保持同样的速度继续爬楼梯,他走到十楼共用多少 2020-06-20 …
人生是一条漫长而曲折的路,途中有芳香迷人的鲜花,也有刺人的荆棘;有喧嚣,也有寂寞,在这条漫漫人生路 2020-06-30 …
人来小亭边,停步看竹篮。打一个字人来小亭边,停步看竹篮。竹篮竹子编,月亮在旁边。旁边有翅膀,一飞冲 2020-07-05 …
好暖啊,那杯浓浓的奶茶评析人生旅途漫漫,我把生活诠释成一段孤独的流浪,通向梦想的大道旁驿站不断,我 2020-07-07 …
求一些类似这样的美句(适合作文开头)“人生旅途漫漫,我把生活诠释成一段孤独的流浪,通向梦想的大道旁 2020-07-12 …
英语翻译请问这个合同现在是否需要(公司名字)signit.还是等待进一步信息再评审.请问这个合同现在 2020-12-05 …
请按下列描述画出小东跑步路线图.(1)小东早晨从大门口出发沿公路跑步,开始向东偏北30°跑100米; 2020-12-15 …
一辆汽车停靠在平直的公路旁,小华同学在该公路上沿公路向东散步,如果以小华同学为参照物,则汽车()A. 2020-12-27 …
仿照下面的拟人句的句式,以光阴为话题,写一个结构大致相似的拟人句,文中不得出现光阴二字例句是,当春风 2021-02-05 …