2
我是一個新手,試圖將從視圖控制器1中的表中選擇的行號傳遞給第二個視圖控制器。在兩個表視圖控制器之間傳遞數字對象:IOS
我試圖用這個屬性聲明爲VC1數量,做到了:
@property (nonatomic, retain) NSNumber *passedSectorNumber;
它,然後在VC1 @synthesized並與VC1的didSelectRowAtIndexPath方法相應的行數設置這樣的:
self.passedSectorNumber = [NSNumber numberWithInt:[indexPath row]];
VC2 *vc2 = [[SectorEditor alloc] initWithNibName:@"vc2nibname" bundle:nil];
[self.navigationController pushViewController:vc2 animated:YES];
[vc2 release];
在VC2中,我還定義了一個名稱相同的NSNumber屬性,並對其進行了合併。
在VC2也:
@property (nonatomic, retain) NSNumber *passedSectorNumber;
I測試在VC 2傳遞的值從而:
NSInteger intvalue = [self.passedSectorNumber integerValue];
NSLog(@"The value of the integer is: %i", intvalue);
數在VC2 「接收到的」 總是 '0',而不管是哪個的行是選擇。
我正在發生菜鳥錯誤。任何想法在哪裏?非常感謝輸入。
在'didSelectRowAtIndexPath'你需要做:'vc2.passedSectorNumber = [NSNumber numberWithInt:indexPath.row];'在alloc-init'vc2'後。爲此,您需要在VC2中聲明屬性'passedSectorNumber'。你不需要在VC1中聲明一個屬性'passedSectorNumber'。 – albertamg 2012-01-06 12:56:59
你有'vc2.passedSectorNumber = self.passedSectorNumber'? – 2012-01-06 13:02:12
>> albertamg,謝謝,那非常好。非常感激。 – 2012-01-06 13:47:34