【发布时间】:2026-01-21 23:50:02
【问题描述】:
我正在尝试使我的类“用户”成为 NSManagedObject 并同时成为 sharedInstance。但是,当我调用我的[User sharedInstance] 时,我得到 CoreData:错误:无法调用 NSManagedObject 类“用户”上的指定初始化程序。
是否可以将 NSManagedObject 视为常规 NSObject 并在其上具有自定义属性和方法?
用户.h
@interface User : NSManagedObject
@property (nonatomic, retain) NSString *Id;
@property (nonatomic, retain) NSString *lastName;
@property (nonatomic, retain) NSString *firstName;
@property (nonatomic, assign) BOOL isLoggedIn;
+ (instancetype)currentUser;
用户.m
@synthesize Id;
@synthesize lastName;
@synthesize firstName;
@synthesize isLoggedIn;
+ (instancetype)currentUser {
static id sharedInstance = nil;
static dispatch_once_t t;
dispatch_once(&t, ^{
sharedInstance = [[self alloc] init];
});
return sharedInstance;
}
【问题讨论】:
标签: ios core-data singleton nsmanagedobject nsobject