2012-04-02 38 views
0

我一直在编写一段时间,但似乎是经常发生这个问题,从来没有发生过。当试图初始化数组/字典时,即使我确定它们正在被正确初始化,它们也总是显示为空。NSMutableArray的分配和初始化工作不正常

Screenshot of error

这仅仅是一个NSMutableArray我@Property(非原子,保留)和@synthesize。谁能告诉我为什么会发生这种情况,因为我注意到它发生在以前没有的地方。难道这只是预测/智能感知显示不正确的信息,如果是的话,我该如何解决它?

在先进的感谢, 埃利奥特

+1

尝试在控制台(和Enter)中键入'po self.pickerObjects'。 Xcode有时可能不会显示实际的信息。 – beryllium 2012-04-02 12:02:42

+0

Heya,感谢您向我展示了数据的提示,这真是太令人讨厌了...... – 2012-04-02 12:19:22

回答

1

尝试在控制台(和Enter)键入po self.pickerObjects。 Xcode有时可能不会显示实际的信息。你的代码看起来不错,我认为这只是一个Xcode故障)。

1

是的,我已经注意到了类似的东西。 NSLog pickerObjects,看看会发生什么。

NSLog(@"%@", self.pickerObjects); 
+0

感谢您的帮助,它在那里,我注意到了我之前的项目。我只是想知道是否有任何方法来更新智能感知(无论它被称为苹果)来解决这个问题。 – 2012-04-02 12:20:07

-3

如果我不mistaken..this是因为你有你的数组类属性,而不是实例变量

删除@property和@synthesize并把它作为pickerObjects = [........]

使用self.pickerObjects你首先需要分配并初始化你的视图(你在做什么就是调用一个类的属性..并且你还没有注入你的类)

(这是否使得sence?)

我不是很擅长解释...但是这是问题..尝试看看会发生什么

+0

我不认为这是真的,无论如何,视图将被初始化(因此为什么调用loadview方法)。或者我不认为它不应该对班级的实际数据成员有任何影响。如果我正在使用IBOutlet并试图依赖视图初始化,那么您的陈述将是正确的。 – 2012-04-02 12:23:32

+0

你令人难以置信的,令人震惊的错误。如果没有'self','viewDidLoad:'内部的代码甚至不能执行。另外,'@ synthesize'指令_创建ivar,并将其链接到属性; 'self.pickerObjects'完全正确。 – 2012-04-03 04:46:43