2017年11月16日 星期四

[Objective-C] Class property - 類別屬性

XCode8以上在Objective-C增加了class關鍵字,你只需要在@property增加此關鍵字即可讓此屬性變成Class Property。

首先先在.h宣告一個class property。
@interface MyClass : NSObject
@property (class, nonatomic, copy) NSString *someString;
@end
view raw .h hosted with ❤ by GitHub


接著在.m實作Getter與Setter。
@implementation MyClass
static NSString *_someString;
///定義Setter方法
+ (void)setSomeString:(NSString *)someString{
_someString = someString;
}
///定義Getter方法
+ (NSString *)someString{
return _someString;
}
@end
view raw .m hosted with ❤ by GitHub
這樣你就可以使用這個class property了,如果這個屬性是readonly的話,可以只實作Getter就好。
MyClass.someString = @"ABC";
NSLog(@"%@",MyClass.someString);
view raw .m hosted with ❤ by GitHub

沒有留言:

張貼留言