最近才刚刚开始ios的开发工作,边工作边学习,发现在整个项目中,需要一个类来控制整个项目的控制数据,一般将这个类写成单件。
单件的好处就是可以在任何类中十分方便的访问这个类中的变量,使用这个类提供的方法,能够很好地在自己的模块中了解整个项目运行的状态。
方法如下:
.h文件中,类的声明方式是跟普通的类一样的,只不过一需要提供一个类方法:
+ (YourClass *)instance;
在.m文件中需要添加一个静态类指针:static YourClass *_yoururClass;
然后实现以下方法:+ (YourClass *)instance
{
static dispatch_once_t predicate;
dispatch_once(&predicate, ^{
_yoururClass = [[self alloc] init];
});
return _yoururClass;
}
此时,这个类就是一个单件了,只能被创建一次并且只保留一个副本,其他类需要访问变量时,仅仅需要包含这个类的头文件,之后通过以下方式访问:[[YourClass instance].number = 1;