当满足if条件时,我想将程序运行期间的时间存储到全局变量中,因此当接收到新时间时,应该将其存储在全局变量中。
在我的if条件下,我想检查一下吗?
NSDate* CurrentTime = [NSDate date];//少于30秒
if ([CurrentTime timeIntervalSinceDate:TimeStoredinglobalvariable] < 30.0f)
{
//do something
//Reset the new time to
TimeStoredinglobalvariable = CurrentTime;
}这种实现if条件的方式可以实现我的任务吗?如何使用NSdate完成这项全球性的工作?
谢谢!
发布于 2012-06-03 14:48:59
您可以使用静态变量创建一个类方法:
.h
@interface YourClass : NSObject
@property (nonatomic, strong, readonly) NSDate *storedTime;
@end.m
#import "YourClass.h"
@interface YourClass()
@property (nonatomic, strong, readwrite) NSDate *storedTime;
@end
@implementation YourClass
static NSDate *_storedTime;
@synthesize storedTime;
- (NSDate *)storedTime {
if (!_storedTime) {
_storedTime = [NSDate date];
}
if ([_storedTime timeIntervalSinceNow] < -30.0f) {
//Do you stuff...
_storedTime = [NSDate date];
}
return _storedTime;
}
@end发布于 2012-06-03 12:48:36
这是存储全局变量的最基本的想法-
在.h文件中
extern NSDate myDate;在.m文件中
NSDate myDate = XXXX; //where XXXX is the value you needhttps://stackoverflow.com/questions/10867884
复制相似问题