iphone - 设置后对象保持为空

标签 iphone objective-c ios

我正在尝试设置一个对象的属性,但它仍然为空。谁能告诉我为什么,好吗?

声明:

@property (nonatomic, strong) ListItem *listItem

代码如下:

NSLog(@"Selected: %@", [self.fetchedResultsController objectAtIndexPath:indexPath]);
[listItem setCategory:[self.fetchedResultsController objectAtIndexPath:indexPath]];
NSLog(@"set %@", listItem);

和输出:

2012-06-28 14:47:43.037 MarketList[10508:fb03] Selected: <Category: 0xb72a9e0> (entity: Category; id: 0xb7252e0 <x-coredata://F9BFC1DF-1D80-477E-9BC6-3C0949AD922F/Category/p2> ; data: {
listItem = "<relationship fault: 0x6d29930 'listItem'>";
name = "Teste 2";})
2012-06-28 14:47:43.038 MarketList[10508:fb03] set (null)

最佳答案

您的变量 listItem 包含 nil,而不是 ListItem 的实例。您实际上从未将它指向 ListItem 的实例,因此在您的方法结束时它仍然是 nil。向 nil 发送消息不会导致对象神奇地出现以接收消息 — nil 只是静静地吞下它。您必须先创建 ListItem,然后设置其属性。

关于iphone - 设置后对象保持为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11250547/

相关文章:

ios - AVAssetExportSession exportAsynchronouslyWithCompletionHandler : method Not Called

iphone - SIGKill 没有警告或使用 NSLogv 进行堆栈跟踪

iphone - 在 UICollectionView 中创建被子布局

ios - 如何在 ios 7 和 ios6 中显示启动图像

objective-c - 在 Windows 中运行 Objective C(通过 XCode 制作)

ios - 如何屏蔽 UIView 以突出显示选择?

objective-c - UIPasteboard - 无法复制文本

iphone - 苹果新的开发者协议(protocol)对于 Monotouch 的实际执行有多严格?

objective-c - 在 NSMenuItem 中使用 NSProgressIndicator

ios - 恢复 Xcode 版本项目