每当我手动弹出一个视图控制器时,就不会在现在出现的前一个UIViewController上调用viewWillAppear。
这是两个常规的UIViewControllers。我的应用程序设置如下:
- UINavigationController
- UITabViewController with 5 UIViewControllers including UIViewControllerA
-UIViewControllerA (When I get back here, viewWillAppear doesnt get called)
-UIViewControllerB (I'm here, I want to pop to A)我尝试过手动调用viewWillAppear,但也没有帮助。会出什么问题呢?我的最后一招是弹出B和A,然后创建一个新的A,并按下它,但这只是最后一招(我假设这会起作用?)
发布于 2011-07-28 21:45:00
UINavigationController的“内部”不能有UITabBarController。这可能就是为什么一些viewWillAppear方法没有被调用的原因。看看这里:Tab bar controller inside a navigation controller, or sharing a navigation root view
发布于 2019-02-21 18:34:34
我创建了这个类来解决您的问题。我已经在我自己的许多项目中使用过它。
只需将其设置为导航控制器的委托,并在视图控制器中实现一到两个简单的方法,这些方法将在视图即将显示或已经通过NavigationController显示时调用
https://stackoverflow.com/questions/6859868
复制相似问题