私は新しい Obj C プログラマーなので、ご容赦ください。私のデータ構造は次のとおりです。
請求書には領収書と配列が含まれています。レシートには、レシート項目の配列が含まれています。ReceiptItems には、itemName という文字列が含まれています。
あるView Controllerで作成されたReceiptタイプのカスタムオブジェクトを別のView Controllerに渡しています。カスタムの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) のプロパティにこのオブジェクトを割り当てようとすると、2 番目の NSLog の出力が空白になります。基本的なことだと思いますが、当惑しています。