我是一个新的 Obj C 程序员,所以请多多包涵。我的数据结构如下:
账单包含收据和数组。收据包含一个receiptItems 数组。ReceiptItems 包含一个名为 itemName 的字符串。
我将在一个视图控制器中创建的 Receipt 类型的自定义对象传递给另一个视图控制器。我是通过自定义的 init 方法这样做的。代码如下:
- (id)initWithReceipt:(Receipt *)currentReceipt
{
self = [super initWithNibName:@"SplitCheckViewController" bundle:nil];
if (self) {
ReceiptItem *temp1 = (ReceiptItem *)[currentReceipt.receiptItemsArray objectAtIndex:0];
NSLog(temp1.itemName);
currentBill.originalReceipt = currentReceipt;
ReceiptItem *temp2 = (ReceiptItem *)[self.currentBill.originalReceipt.receiptItemsArray objectAtIndex:0];
NSLog(temp2.itemName);
}
return self;
}
currentReceipt 正在通过并包含每个第一个 NSLog 输出的适当数据。但是,一旦我尝试将此对象分配给此视图控制器(currentBill.originalReceipt)中的属性,我会得到第二个 NSLog 的空白输出。我确定这是基本的东西,但我很困惑。