0

我在 xCode 中编程,我的一个 Nib/Xib 文件有一些按钮,这些按钮会根据情况隐藏和显示。它还具有将其带到不同 Nib/Xib 文件的按钮。如果我切换到新的 Nib/Xib 文件并再次返回,我应该使用什么代码来确保在第一个 Nib/Xib 文件中隐藏/显示的按钮保持不变?

到目前为止我一直在编码的方式(我是一个初学者),每次我去它时我都会重新加载一个视图,它会重置为它的初始状态。

我目前使用的代码基本如下:

- (IBAction)backToHomeView:(id)sender {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.homeViewController = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
self.window.rootViewController = self.homeViewController;
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];

}

我希望这不会太混乱,如果我需要详细说明,请告诉我。谢谢和最好的问候。

4

2 回答 2

2

解决方案是避免使用您的视图来跟踪应用程序状态。如果“情况”发生变化,无论是由于用户操作还是由于传感器读数、时间流逝、接收到的数据等外部因素,您的应用程序应该跟踪该情况并相应地更新视图。如果你能做到这一点,那么视图是否保持它们的状态并不重要——你应该在它们即将显示时将它们更新到当前的应用程序状态(-viewWillAppear)。

于 2013-07-27T10:55:57.247 回答
0

如果您使用 aUINavigationController并将其他视图送到其上,则父视图不应更改。这是解决此特定问题的标准方法。

另一种方法是使用某种状态数据模型来保持按钮的状态,并确保在视图出现在屏幕上之前正确设置状态。

于 2013-07-27T10:30:50.473 回答