Xcode:每个控制器中的故事板和保留数据

时间:2012-01-19 12:36:16

标签: iphone ios xcode uiviewcontroller storyboard

你可以猜到我是一个新的程序员,我很难得到一个简单的东西! 我正在使用多个视图控制器制作应用程序。每个控制器都有文本字段和UIsegmentedControl项。当我从一个视图控制器移动到另一个视图控制器时(如果重要的话,则使用模态转移),前一个(文本字段条目和分段控制选项)的内容将重置为其原始状态。我如何让他们保持以前的状态? 提前谢谢。

3 个答案:

答案 0 :(得分:2)

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    bViewController *deneme = [segue destinationViewController];
    [deneme setPassedValue:label.text];
}

我希望这段代码可以解决您的问题。它保存了内部任何内容的标签。而且您需要向其他类添加更多代码。

如果此代码可以帮助您告诉我,我可以为您提供完整的代码。

答案 1 :(得分:0)

要保存应用程序状态,可以按照推荐的MVC(模型 - 视图 - 控制器)范例使用模型类。 更多信息请访问:Retain view state upon reloading

作为替代,您可以使用viewWillDisappear:事件保存视图状态,然后在viewWillAppear:事件中将其恢复。

在视图消失之前触发viewWillDisappear:事件,并且在将视图放在前台之前触发viewWillAppear:,这是对UI进行任何更改的理想选择。

这些事件可能已在您的视图控制器中为您声明,但如果他们未在此处检查原型:http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html

答案 2 :(得分:0)

您还可以使用导航控制器从一个视图移动到另一个视图。 这样,您将在上一个视图之上推送新视图,当您返回时,前一个视图保持其状态。 有关故事板和UINavigationController的更多信息,请参阅本教程: http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1