菜鸟教程小白 发表于 2022-12-13 10:42:24

iOS 回根 ViewController 在 modal 和导航 uiviewcontroller


                                            <p><p>我有一个关于导航的结构,许多页面在 uiviewcontroller(UINavigationController) 上有模式(弹出)。</p>

<p>当我断开蓝牙时,我需要回到 Root ViewController 。</p>

<p>所以我在disconnect方法中设置了dismiss和popToRoot</p>

<pre><code> -(void) disconnect
{
....
;

NSLog(@&#34;appDelegate.window.rootViewController:%@&#34;,appDelegate.window.rootViewController.class);
// show log appDelegate.window.rootViewController:UINavigationController

;
....
}
</code></pre>

<p>但是当我运行程序并断开蓝牙时,</p>

<p>在情况1:模态视图 Controller 显示,</p>

<p>它将关闭模态视图 Controller ,关闭是正确的。</p>

<p>但是dismiss modal viewcontroller后并没有回到根导航 Controller 。</p>

<p>案例2:就在uinavigation Controller 页面中。</p>

<p>当我断开蓝牙时,没有回到根导航 Controller 。</p>

<p>我怎样才能回到导航根页面?我的失败在哪里?</p>

<p>非常感谢。</p>

<p>//------ 答案-------</p>

<p>把代码改成</p>

<pre><code>;

   ;

- (void) gotoRoot {

   UINavigationController *myNavCon = (UINavigationController*)appDelegate.window.rootViewController;

   ;
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>从您提供模态视图的类中调用模态的解除,然后在延迟一段时间后执行选择器,然后执行这里的示例代码</p>

<pre><code>- (void) dismissAndGoToRoot {
      ;
      ;
}

- (void)gotoRoot {

    ;
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于iOS 回根 ViewController 在 modal 和导航 uiviewcontroller,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/29763952/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/29763952/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iOS 回根 ViewController 在 modal 和导航 uiviewcontroller