首页 文章

dismiss viewController总是触发viewDidLoad而不是viewWillAppear

提问于
浏览
0

我有一个标签栏,在最后一个标签中我有一个UIViewController A,里面有一个按钮,当你点击它时它会呈现一个UIViewController B:

let bVC = B()
bVC.settingsPresenter = self   
self.present(bVC, animated: true, completion: nil)

当用户在B中并想要离开屏幕时,有一个按钮在A(而不是B)上调用此方法:

self.dismiss(animated: true, completion: nil)

因此,当我第一次到达选项卡时,它会调用viewDidLoad,然后在A上查看viewWillAppear . 如果我转到第一个选项卡然后返回到最后一个,只有viewWillAppear在A上 . 一切看起来都很正常 .

但是当我关闭B时,调用了A的viewDidLoad,甚至没有查看了WillAppear ...我怎么能把它变成反向(你知道逻辑方式,因为视图已经加载了,我只需要通知选项卡会出现)

1 回答

  • 0

    如果ViewController正在加载但显示另一个,它将永远不会显示,因为它呈现的其他视图控制器将出现

    希望这可以帮助!

相关问题