我是編程新手,在將對象從一個VC移動到另一個時遇到問題。在視圖控制器之間移動對象
我的第二個VC有NSArray * objects
。第三VC有NSMutableArray
*產品。我有模態SEGUE 2 - > 3 這裏是我的賽格瑞方法:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"Products segue"]) {
ProductsViewController*pvc = segue.destinationViewController;
pvc.products = [self.objects mutableCopy];
}
}
在ProductsViewController
我創建了幾個對象:
-(IBAction)addSomeObjects {
products = [NSMutableArray new];
[products addObject:@"Cola"];
[products addObject:@"Pepsi"];
[products addObject:@"Fanta"];
[products addObject:@"Red bull"];
[products addObject:@"Monster"];
如果我的NSLog我IBAction
方法,產品成功添加我的對象,但當我dissmissViewController
我的對象數組是空的。
感謝您的任何幫助。
This:'pvc.products = [self.objects mutableCopy]'創建一個新的可變數組,它包含與'self.objects'相同的對象。這:'products = [NSMutableArray new]'創建一個新的空數組。你已經證明,它不會改變'self.objects'。 –
那麼,我該怎麼做才能改變我的self.objects? –
可能重複[在視圖控制器之間傳遞數據](http://stackoverflow.com/questions/5210535/passing-data-between-view-controllers) –