如何初始化PFObject的子类?

时间:2015-04-16 22:38:06

标签: objective-c parse-platform

所以我正在尝试清理我的代码并将所有一个对象的逻辑移动到它自己的类中。

我希望能够做到这样的事情:

@interface Habit : PFObject<PFSubclassing> 然后就可以打电话了 [Habit calculateStreak]

如何使用已创建的Habit及其所有数据初始化PFObject?像[Habit * running = Habit initWithThis:someObjectWithData]这样的东西?或者我认为这一切都错了?

1 个答案:

答案 0 :(得分:1)

子类化非常简单:只需继承PFObject并采用PFSubclassing协议:

@interface Habit : PFObject <PFSubclassing>

- (id)calculateStreak;

@end

然后,确保覆盖parseClassName以返回Parse类名称:

@implementation Habit

- (NSString *)parseClassName
{
    return @"Habit";
}

@end

您还必须注册子类,这应该在+[Habit load]

中完成
@implementation Habit

- (void)load
{
    [self registerSubclass];
}

- (NSString *)parseClassName
{
    return @"Habit";
}

@end

然后你可以像使用+[object]之类的任何其他Parse类一样实例化类:

Habit *habit = [Habit object];