0

我有一个看起来像这样的实例变量:

@property (strong, nonatomic) Post *post;

我将它设置在这样的自定义初始化方法中:

- (id)initWithPageType:(int)pageType andPost:(Post *)post
{
    self = [super initWithNibName:@"StreamViewController" bundle:nil];
    if (self) {
        // Custom initialization
        self.post = post;
        self.pageType  = pageType;
    }
    return self;
}

在这种情况下,它永远不会为 NULL。我也有NSFetchedResultsController以下委托方法:

- (void)controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject
   atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type
  newIndexPath:(NSIndexPath *)newIndexPath
{
    [...]
    // Here self.post == nil for some reason...
    [...]

有人知道为什么会这样吗?

4

1 回答 1

2

编写自己的 setter,然后在 setter 中的语句上放置断点。现在您将知道设置它的代码是什么。

于 2013-04-30T11:49:59.223 回答