这是对已定义架构的旧版 iPhone 应用程序的补充(几年前,由其他人定义。)
主要限制是主菜单系统的功能基于配置文件,所以我不能从主菜单调用任何特定的初始化代码。
这意味着我正在开发的 View 是独立的,并且必须以某种方式使用来自系统的信息来管理其状态。
此外,在每个屏幕上都有一个“设置”按钮,将用户带到“设置” Pane ,该按钮被推送到“我的” View 顶部的导航堆栈上。当用户关闭设置 Pane 时,我的 View 会按照正常导航重新出现。
好的,这是我的问题:
当用户从菜单进入我的 View 时,我希望它被重置,所以所有输入字段都是空的。
如果用户进入设置屏幕并返回我的屏幕,我希望保留所有以前的输入,即不重置为空字段。
如果用户随后返回主菜单并重新进入我的屏幕,则字段应该再次为空。
是否有一种强大的、记录在案的、最好是简单的方法来知道我是否应该在这种情况下重置字段?
最佳答案
您可以检查导航堆栈以查看设置页面当前是否在堆栈上?
- (void)viewWillAppear:(BOOL)aAnimated
{
[super viewWillAppear:aAnimated];
NSArray* stack = [[self navigationController] viewControllers];
UIViewController* last = [stack lastObject];
}
关于iphone - 我的 UIViewController 怎么知道是谁把它放到堆栈上的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6792111/