保持视图之间的数组

时间:2012-03-01 20:43:31

标签: arrays xcode views

我有一个主视图,我在其中初始化多个数组并在viewDidUnload中释放它们。因此,当我改变到其他视图,我有指令,然后我回到主视图,所有数组都是零。

我要做的是:当应用程序被启动时,数组被初始化,使用它们,我可以转到其他视图,当回到主视图时,数组保留值,并且仅当app关闭然后释放所有数组。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

只需在-dealloc中释放它们并在viewDidLoad中初始化它们。这样它们只有在视图关闭时才会被释放或无效,当它被重新加载时,它们会被重新初始化。

希望这有帮助。

答案 1 :(得分:0)

您可以针对您的问题使用不同的方法。我可以告诉你一些方法。

  • 您可以编写视图初始化方法,该方法将NSArray作为参数。像:

    - (id)initWithArray:(NSArray *)myArray {
        [super init];
        //here you can store an NSArray inside this ViewController in @property. For ex:
        currentArray = myArray;
        return self;
    }
    
  • 您可以使用CoreData之类的全局存储,并使用NSManagedObject类在每个视图中定义必要对象的实例。

  • 您可以使用delegate approach。例如,您可以在第一个视图中委托第二个视图中的方法。