0

我目前需要呈现一个登录屏幕,然后是其他屏幕,然后再返回主菜单。

目前,我检查是否有人在主菜单上登录,如果没有,则显示模式登录视图(在 UINavigationController 内)。然后用户填写他们的登录详细信息并单击提交。但在返回主菜单(现在已登录)之前,我需要再展示两个屏幕来显示一些选项。

我不确定为此使用哪种结构。当用户单击提交按钮时,我考虑将选项屏幕推送到堆栈上。但是,一旦他们完成了该屏幕,并弹回根(登录)视图控制器,有没有办法自动关闭模式视图,或者我应该以另一种方式构造它?

谢谢。

4

2 回答 2

1

您可以在 UINavigationController 中推送您的登录屏幕,并使用此控制器推送您的附加登录屏幕。

// create and add your view controller to a navigation Controller
LoginController *loginController = [[LoginController alloc] init]; 
UINavigationController *navigationController = [UINavigationController alloc] initWithRootController:loginController];
// present it modally
[self presentViewController:navigationController animated:YES];

一旦您的用户完成了最后一个登录后屏幕,在 navigationController 上调用 dismissViewController 将返回您的主屏幕。

[self.navigationController dismissViewControllerAnimated:YES];
于 2013-07-10T10:15:32.450 回答
0

最好的方法是在您使用导航控制器的应用程序委托中以模态方式呈现它,只需在此处初始化您的登录视图并从您的导航控制器以模态方式呈现它,如下所示。

[self.navigationController presentModalViewController:loginView 动画:是];

并在您的登录视图中使用

[self.navigationControllerdismissViewController 动画:YES];

于 2013-07-10T10:32:00.000 回答