求教, iphone开发中时间判断

iOS 码拜 9年前 (2015-05-03) 708次浏览 0个评论
 

要判断一个动作结束后的时间到现在是否大于某特定的时间,怎么做。。。- -!

求教, iphone开发中时间判断
NSTimer
求教, iphone开发中时间判断
引用 1 楼 volcan1987 的回复:

NSTimer

不是定时器。

就是比如我刚完成了一个动作,我想要判断刚才的动作到现在是大于2S还是小于还是等于。。。

求教, iphone开发中时间判断
引用 2 楼 haitang59 的回复:

引用 1 楼 volcan1987 的回复:

NSTimer
不是定时器。

就是比如我刚完成了一个动作,我想要判断刚才的动作到现在是大于2S还是小于还是等于。。。

这里的“到现在”是怎么理解啊,你是想一直监听动作发生后的时间吗 

求教, iphone开发中时间判断
如果是2s后执行一个方法
[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(你的方法名) userInfo:nil repeats:NO];
如果是监听动作发生后的时间就需要新建一个线程了
求教, iphone开发中时间判断
需求是,一个动作结束后,两秒以内没有其他任何动作,执行另外一个动作,难道要重新开线程?开线程我也不知到怎么判断。。。感觉应该有计时的东西似的
求教, iphone开发中时间判断
10分
那你可以这样,首先加入[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(onTime) userInfo:nil repeats:NO];
在每个动作(我觉得你的意思应该是每个动作绑定在一个方法里)里都做一个flag标记,标记默认为NO,如果其他动作执行,就将flag置为YES,
应该类似
– (void)其他任何动作的方法 {
    flag = YES;
    //其他方法
}
然后在onTime这么写
– (void)onTime 
{
    if(!flag) {
        另外一个动作
    }
}
求教, iphone开发中时间判断
50分
// REF:http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDate_Class/Reference/Reference.html
NSTimeInterval time = [[NSDate date] timeIntervalSince1970];

// REF:http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html
NSTimeInterval

Used to specify a time interval, in seconds.
typedef double NSTimeInterval;
Discussion

NSTimeInterval is always specified in seconds; it yields sub-millisecond precision over a range of 10,000 years.

得到两个NSTimeInterval的秒数后减一下就知道了。

求教, iphone开发中时间判断

学习了

求教, iphone开发中时间判断
40分
NSDate 有个compare:方法,可以用这个方法来比较判断
求教, iphone开发中时间判断
6楼OK~~
求教, iphone开发中时间判断
在 事件结束时 开启计时器 记录时间, 之后 用当前时间 减去开始记录的时间 就可以了~! 
求教, iphone开发中时间判断
不就是比较时间吗

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明求教, iphone开发中时间判断
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!