根据cocoa文档,timestamp
上的UIEvent
是“自系统启动以来的秒数”。这是一个NSTimeInterval
。
我想尽可能有效地生成一个等价的数字。当然,我想要在UIEvent
不发光的情况下这样做。 : - )
答案 0 :(得分:6)
好的,我做了一点挖掘,这就是我想出的:
#import <mach/mach.h>
#import <mach/mach_time.h>
+ (NSTimeInterval)timestamp
{
// get the timebase info -- different on phone and OSX
mach_timebase_info_data_t info;
mach_timebase_info(&info);
// get the time
uint64_t absTime = mach_absolute_time();
// apply the timebase info
absTime *= info.numer;
absTime /= info.denom;
// convert nanoseconds into seconds and return
return (NSTimeInterval) ((double) absTime / 1000000000.0);
}
这似乎等同于timestamp
的{{1}},UIEvent
给出的内容很有意义。
答案 1 :(得分:2)
也许您可以将NSDate
方法-timeIntervalSinceDate:
和mach
基于框架的函数GetPIDTimeInNanoseconds
结合使用,以获得相同的结果。