我有你的類:HopBill,HopBillController和HopBillSheetController。 HopBill創建一個持有NSMutableArray的對象。出於測試目的,我已經在HopBill的init
方法中向數組添加了一行。 HopBillController.h有#import "HopBill.h"
和HopBillController.m初始化對象在它的awakeFromNib
方法:aHopBill = [[HopBill alloc] init];
。到現在爲止還挺好。從HopBillController.m中,我可以調用方法到aHopBill對象。它檢索在init等插入的行。對象(持有NSMutableArray)在父/子類中具有不同的內容
HopBillSheetController是HopBillController的子項,基本上是按下按鈕後彈出的表單。填寫完一些字段後,需要向aHopBill添加一行關閉表單。在HopBillSheetController我:
#import "HopBillController.h"
@interface HopBillSheetController : HopBillController {
我可以從HopBillSheetController.m所有方法來檢索插在初始化行。一切似乎都很好。但是,當我填寫表格中的字段並按下確定(爲了向aHopBill添加一行)HopBillSheetController在HopBillController中調用一個方法:[super addHopAddition: [variety stringValue]];
。該行被添加,但是當我從HopBillController.m中的aHopBill檢索所有行時,它只返回在aHopBill的init中插入的行。當我從表單中執行同樣的操作時,它會返回插入在aHopBill的init中的行以及剛添加到表單中的行。
就好像我有兩個aHopBill對象,但顯然這需要是一個單獨的對象。我究竟做錯了什麼?
猜猜我不知道系統如何工作:) – Joran