当我使用presentModelViewController时,为什么viewWillAppear没有在我的UITabBArController中调用?
问题描述:
我的应用程序是一个基于视图的应用程序。我做了一个登录视图,如果用户输入正确的用户名和密码,我去主菜单这是一个UITabViewController这样的:当我使用presentModelViewController时,为什么viewWillAppear没有在我的UITabBArController中调用?
MainMenuController *mainMenu = [[[MainMenuController alloc] init] autorelease];
[mainMenu setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
[self presentModalViewController:mainMenu animated:YES];
MAINMENU有4个标签使用这些名称:菜单,历史,设置,音乐。
当我点击选项卡,然后viewWillAppear视图附加该选项卡应该被调用。但它不叫任何标签的viewWillAppear。在菜单选项卡我生成一个的tableView当按钮被点击这样的:
[self presentModalViewController:sel animated:YES];
,当表中的任何行,拍了拍我称之为:
[self dismissModalViewControllerAnimated:YES];
使表视图消失。奇怪的是,在完成这个之后,viewWillAppear会被调用到附加到标签栏的每个视图。然后当我切换标签栏视图然后viewWillAppear为每个视图被调用。为什么是这样,是否有任何方式与TabBarController附加的每个视图的viewWillAppear将被调用,而无需调用新的tableView?在此先感谢
答
您没有回答我的问题,但确定。试试这个,把你的菜单标签作为第二个。看看现在是否调用viewWillAppear
。
为什么你会以模态方式呈现TabViewController? – Peres
我必须做一些设置。该tableview的每一行设置的东西。但是当view视图关闭时,将会调用TabBarController附带的每个视图的viewWillAppear。为什么在tableView被呈现和解散之前他们没有被调用。 – Piscean
只是忘了那个tableView。我写了这个,因为在tableView出现和解除之后,每个视图的viewWillAppear被调用。 – Piscean