关于ios:如何在关闭它上面的那个后处理初始的ViewController

How to handle the initial UIViewController after dissmissing the one on top of it

m大家好

如果我使用了不正确的术语,请先原谅我。我在使用 viewController 时遇到问题。我有一个通过 navigationController 访问的 viewController(触发的 segues:rootViewcontroller->firstviewcontroller)

现在我在 firstviewcontroller 上,它调用"viewdidLoad",如果用户没有登录,它会对 loginViewController 执行模态搜索。

处理完此视图的登录问题后,我执行

1
         [self.presentingViewController dismissViewControllerAnimated:NO completion:nil];

它会关闭登录控制器并毫无问题地将我带回 firstviewController。

现在我的问题是,这个解除操作——毫无疑问——不会再次调用"viewDidLoad"(这样我就可以检查用户是否已登录)。我想知道我是否可以在关闭第二个视图控制器后自动调用我的第一个视图控制器的任何部分,以便我可以自动检查登录状态并相应地执行操作。

非常感谢

阿尔达


你可以覆盖 firstViewController 中的 -viewWillAppear: 方法。它会在你关闭登录控制器后被调用。

另一种方法是让你的 firstViewController 成为登录控制器的委托。完成登录过程后,您可以调用委托来关闭呈现的视图控制器并更新子视图