2009-12-14 62 views
0

我建立使用核心數據的玩具應用程序的兩個實體Log(屬性textdate)和TagLogTag一個多一對多tags關係。核心數據和定製的NSCell

我要顯示的日誌在一個表中,所以我:

  • 在IB創建一個NSArrayController例如,LogController設置爲Log實體(pic
  • 創建一列NSTableView其列綁定到LogControllerpic
  • 在我的應用代理(AppDelegate)中使用IBOutlet連接了LogControllerAppDelegate也有managedObjectContext
  • 創建的自定義NSCellNSString屬性mainTexttagsText我繪製到電池
  • 我在- (void)tableView: willDisplayCell: forTableColumn: row:方法設置在AppDelegate上述兩個電池特性。 (MainController也是表的代表)。對於tagsText我獲取當前日誌標籤,並將它們連接成一個單一的NSString

一切工作正常,但:當我鼠標選擇顯示多個標籤的應用程序崩潰與EXC_BAD_ACCESS一行。這是我唯一的錯誤,但我不知道是什麼原因造成的。

回答

0

EXC_BAD_ACCESS是內存錯誤。您在釋放它之後使用了一個對象。沒有代碼就很難調試。

你在使用垃圾回收器嗎?你不必在Mac上自己管理內存。

您的自定義NSCell中的屬性是否聲明爲「保留」?

+0

右:我沒有聲明其中一個屬性爲保留。這解決了它。 – raheel 2009-12-18 13:29:47