如何在ViewControllers中存储NSMutableArray中的值

时间:2014-09-13 09:33:28

标签: ios objective-c iphone storyboard nsmutablearray

我想解决我的问题,我不知道如何从(对于前)4个viewControllers存储价值并将其保留在最后一个。它应该像记分卡,在第一季我赚了4pt(并在TextField中写),在第二季度5pt等。在最后一季它应该总结和排序等。 我从最后一个名为Result的ViewController中盯着看,另外四个叫做First,second等。 在结果中我创建了

@property(strong, nonatomic) NSMutableArray *array;

first,second etc从result继承数组,对于First我创建了:

-(void) prepereForSegue:(UIStoryboardSegue*)segue sender :(id)sender
{

if ([segue.identifier isEqualToString:@"id1"]) {

    NSString *str1 = [_firstResult text];

    Result *Result1 = [segue destinationViewController];

    Result1.array = [[NSMutableArray alloc]init];

    [Result1.array addObject:str1];

}


}

第二名:

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{

   if([segue.identifier isEqualToString:@"id2"]) {
     NSString *str2 = [_SecondResult text];

     Result *Result1 = [segue destinationViewController];

    Result1.array = [[NSMutableArray alloc]init];

    [Result1.array addObject:str2];
     }
}

当我在阵列中运行项目时,这是第四季度的最后一个分数。 我认为我不应该在每个viewController中分配和初始化NSMutableArray,但我不知道如何使其工作.. 请帮我。 欣赏!

2 个答案:

答案 0 :(得分:0)

每次创建新数组时,为什么数组只包含最后一个值。在appDelegate中创建一个数组或使用共享对象来保存结果。

答案 1 :(得分:0)

是的,你是每次创建一个拥有当前和单个对象的新数组。 创建一个共享对象并调用该数组以保存和获取值。 或者只是在appdelegate中创建一个数组。