【问题标题】:Subclassing PFObject And Overriding Dynamically Added Accessors子类化 PFObject 并覆盖动态添加的访问器
【发布时间】:2013-08-29 16:44:52
【问题描述】:

我了解如何将 PFObject 子类化,但我不确定如何在访问器中执行额外的自定义代码,同时仍然调用 Parse 定义的访问器的通用实现和 @dynamic-ally 添加的 Parse(它做了正确的事情取决于属性的类型,例如 PFRelation 等)。

比如……

// MyPFObjectSubclass.h
#import <Parse/Parse.h>
@interface MyPFObjectSubclass.h : PFObject<PFSubclassing>
@property (retain, nonatomic) id myProperty;
+ (NSString *)parseClassName;
@end

// MyPFObjectSubclass.m
#import "MyPFObjectSubclass.h"
#import <Parse/PFObject+Subclass.h>
@implementation MyPFObjectSubclass
@dynamic myProperty;
+ (NSString *)parseClassName {
    return @"MyPFObjectSubclass";
}
- (void)setMyProperty:(id)someProperty {
    // insert some custom code here, e.g. for validation...
    // call the generic, dynamic implementation of setMyProperty, but how?
    // obviously, you cannot call [super setMyProperty:someProperty];
}
@end

感谢任何帮助。

【问题讨论】:

  • 你在这方面做得如何?有没有更进一步?
  • 我认为当我们为 PFObject 子类指定的动态属性设置值时调用的最终方法是 -[PFObject setObject:forKey:],键是您的属性的名称。所以应该在自定义代码的末尾调用它

标签: dynamic parse-platform overriding accessor subclassing


【解决方案1】:

您需要做的就是实现自己的访问器并跳过@dynamic

【讨论】:

    猜你喜欢
    • 2015-01-29
    • 2015-02-17
    • 1970-01-01
    • 2022-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-10
    • 1970-01-01
    相关资源
    最近更新 更多