0

我插入一個使用coreData的NSManagedObject數組,當我成功插入第一個對象後,NSMutableArray的第二個對象變爲零爲什麼是這樣? 這裏是我的代碼的快照:核心數據,NSMutableArray包含NSManagedObject,插入數組的第一個NSManagedObject後對象變爲零

當我進入插入功能我調試categoryArray,所有的對象都沒有,循環第一次臨時變成零出於某種原因後,任何人都知道這是爲什麼?

+0

一個NSArray的實例應該返回零隻有當陣列本身是零,這是因爲將消息發送到零返回nil 。 檢查保存消息後categoryarray是否仍然存在。 – Giuseppe

+0

categoryArray依然存在,但categoryArray中的所有DataCategory現在在nil的第一個循環之後爲零 – Legnus

回答

0

categoryArray不應該是此方法的參數。在您的設置中,該方法將作爲該方法專用的變量傳遞給一個數組。一旦你離開方法,這個數組將包含什麼,除非你返回一些東西,這是不可預知的。

相反,你應該有一個由視圖控制器管理的ivar。初始化

categoryArray = [NSMutableArray array]; 

所述的ivar在viewDidLoad,然後使用該變量,並且不傳遞數組的方法。

PS:你可以通過消除謾罵提高您的編程風格;-)

相關問題