我正在开发一个涉及登录视图的基于导航的应用程序。我处理相同导航层次结构(返回登录页面)的方法是
使用两个导航控制器
用户登录后立即创建一个新的导航控制器
将新视图控制器的根分配给登录后视图
someViewController.navigationController = [[[UINavigationController alloc]initWithRootViewController:someViewController ] autorelease];将此导航控制器分配给窗口:
MYAppDelegate *appDelegate = (MYAppDelegate *)[[UIApplication sharedApplication] delegate];appDelegate.navigationController = someViewController.navigationController;
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; [window addSubview:someViewController.navigationController.view]; [window makeKeyAndVisible];
- 最后将“someViewController”推入堆栈。
[self.navigationController pushViewController:someViewController animated:YES];
到目前为止一切正常..
结果:
someViewController 的导航控制器是完整应用程序的新导航控制器,无法返回 LOGIN 视图。
我能够将新的 ViewControllers 推送到堆栈并来回导航到下一个级别。
问题 :!!
“我只能将新的 ViewControllers 推送到堆栈并来回导航。到下一个级别,而不是进一步......”
说:
(newroot)master-->subordinates--X->details。// 我无法导航到第三级。(newRoot) 下级--> 详细信息。
在发布之前我还尝试了什么?
- 尝试简单地将同一导航控制器的根设置为 POST-LOGIN ViewController
问题:它也不起作用。
请指导
谢谢期待。