簡體   English   中英

取消模式視圖后的可見視圖控制器

[英]Visible View Controller after dismissing modal view

我想知道為什么不會發生:我在導航控制器中嵌入了2個視圖控制器。 所有人都有超類,而我有這樣的東西:

-(void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    NSLog(@"Visible VC: %@",self.navigationController.visibleViewController.class);
}

到目前為止,一切都像魅力。 然后,我添加了第三個導航控制器,即模態視圖控制器。 它也像其他人一樣具有超級階級。 現在我看到了奇怪的事情。 單擊按鈕以顯示模式視圖控制器后,我看到日志:“可見:(空)”,但是可以,因為第三個VC不在導航控制器中。 當我單擊關閉按鈕以隱藏模態視圖控制器時,我看到2條日志:“可見:(空)可見:ViewController3”。 我的問題是:為什么可見的視圖控制器不是ViewController2類? 應該的,因為第三人被解雇了。 我該如何解決? 我需要類View Controller 2的可見View Controller類。

我猜想當viewController2被調用時它還不是可見的。

嘗試訪問它

viewDidAppear

而不是viewWillAppear。

或者,您可以嘗試訪問

self.navigationController.topViewController

屬性,應返回viewController2。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM