0

我想关闭所有子视图并最终移至根视图控制器。我使用了以下代码

DispatchQueue.main.async {
        appDelegate.window?.rootViewController?.dismiss(animated: false, completion:nil)
}

但问题是,在移动到根视图时,它首先显示子视图,然后是根视图。

我该如何解决这个问题?任何想法?

4

2 回答 2

0

导航控制器对象的使用popToRootViewController方法。

前任:[self.navigationController popToRootViewControllerAnimated:YES];

此方法将通过弹出当前视图控制器到根视图控制器之间的所有视图控制器来弹出到根视图控制器。

于 2017-05-30T06:25:22.900 回答
0

使用它会关闭所有呈现UIViewController的并转到 rootViewcontroller

self.view.window!.rootViewController?.dismiss(animated: false, completion: nil)

如果您从其他地方调用它,则需要传递控制器并将 self 替换为控制器

于 2017-05-30T07:19:45.773 回答