似乎并不是每次通过选项卡栏显示视图时,都会调用viewDidAppear
方法。在此问题上,我已进行了尽可能多的搜索,但并未真正找到确切的答案。
有什么建议或解决方法吗?
最佳答案
为了使viewWillAppear
和viewDidAppear
在选项卡栏控制器中正常运行,您将需要确保在显示选项卡栏控制器本身时调用这些方法。也就是说,如果您以编程方式创建UITabBarController
,请确保调用以下方法:
UITabBarController *myTabBarController = [[UITabBarController alloc] init];
[myTabBarController setViewControllers:myViewControllerArray];
[myTabBarController viewWillAppear:NO];
[[self view] addSubview:[myTabBarController view]];
[myTabBarController viewDidAppear:NO];
如果您的标签栏控制器是在NIB文件中创建的,则此方法不适用-在这种情况下,我不确定为什么不会自动调用您的
viewDidAppear
方法。关于iphone - 按下选项卡栏项时是否可以重新加载 View ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1848602/