首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >创建一个全局变量来存储NSDate中的时间?

创建一个全局变量来存储NSDate中的时间?
EN

Stack Overflow用户
提问于 2012-06-03 12:25:07
回答 2查看 1.7K关注 0票数 2

当满足if条件时,我想将程序运行期间的时间存储到全局变量中,因此当接收到新时间时,应该将其存储在全局变量中。

在我的if条件下,我想检查一下吗?

代码语言:javascript
运行
复制
 NSDate* CurrentTime = [NSDate date];

//少于30秒

代码语言:javascript
运行
复制
if ([CurrentTime timeIntervalSinceDate:TimeStoredinglobalvariable] < 30.0f)
    {
        //do something
        //Reset the new time to
        TimeStoredinglobalvariable = CurrentTime;
    }

这种实现if条件的方式可以实现我的任务吗?如何使用NSdate完成这项全球性的工作?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-03 14:48:59

您可以使用静态变量创建一个类方法:

.h

代码语言:javascript
运行
复制
@interface YourClass : NSObject

@property (nonatomic, strong, readonly) NSDate *storedTime;

@end

.m

代码语言:javascript
运行
复制
#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
票数 2
EN

Stack Overflow用户

发布于 2012-06-03 12:48:36

这是存储全局变量的最基本的想法-

在.h文件中

代码语言:javascript
运行
复制
extern NSDate myDate;

在.m文件中

代码语言:javascript
运行
复制
NSDate myDate = XXXX; //where XXXX is the value you need
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10867884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档