Ios 多导航控制器
我正试图开始学习Navigator Controller教程,但找不到一个包含多个导航控制器的教程 到目前为止,我有以下代码:第一页是一个使用Ios 多导航控制器,ios,ios5,uinavigationcontroller,Ios,Ios5,Uinavigationcontroller,我正试图开始学习Navigator Controller教程,但找不到一个包含多个导航控制器的教程 到目前为止,我有以下代码:第一页是一个使用UIViewController的简单主菜单。通过按下第一个按钮,用户可以使用UINavigationController进入客户列表页面,并且后退按钮正确显示在客户列表页面的导航栏上 在我的应用程序委托中,我有以下代码: - (BOOL)application:(UIApplication *)application didFinishLaunching
UIViewController
的简单主菜单。通过按下第一个按钮,用户可以使用UINavigationController
进入客户列表页面,并且后退按钮正确显示在客户列表页面的导航栏上
在我的应用程序委托中,我有以下代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
在负责显示客户列表的视图控制器中,后退按钮调用以下方法:
- (void)backHome:(id)sender {
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
ViewController *viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
appDelegate.window.rootViewController = viewController;
[self.navigationController popToViewController:viewController animated:YES];
// self.window.rootViewController = self.viewController;
[appDelegate.window makeKeyAndVisible];
}
但它停止了工作。我不确定如何才能实现此功能。在
ui窗口上设置UINavigationController
作为您的rootViewController,如下所示:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
return YES;
}
-(void)backHome:(id)sender
{
[self.navigationController popViewControllerAnimated:YES];
}
然后返回时只需在堆栈上弹出viewController,如下所示:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
return YES;
}
-(void)backHome:(id)sender
{
[self.navigationController popViewControllerAnimated:YES];
}
要真正了解iOS的基本知识,我建议你买本书,好好学习。就在最近,我得到了一本关于iOS的书,我发现它非常有用。祝你的冒险事业好运
要回答您的问题,Markus是对的,您需要一个rootViewController,从中可以将其他视图推到它的顶部(例如,当按下按钮时),要返回主视图,可以将其推到顶部。English。格式化。空白。缩进。文档努力。谢谢,如果我不想让UINavigationController加载,而只想让UIViewController显示菜单。这将对第二个菜单执行相同的操作,例如FoodMenu,它将使用UITabNavigation。在这种方式下,它将返回到主菜单按钮(UIVIEWCOntroller)感谢您的推荐,我已经做了一些教程和3天的课程了。但我从教程中了解到,对于一个项目,它只涉及一个UINavigatorCOntroller或UITabCOntroller。然而,我尝试做的是主菜单(UIViewController)-客户列表(UINavigationCOntroller)-食物菜单(UIABController),所以如果您知道任何教程和书籍,请咨询,谢谢。