仅关闭呈现的视图控制器,而不是整个导航堆栈Swift

问题描述 投票:3回答:1

我有一个标签栏控制器。因为第一个选项卡是导航控制器。让我们将其称为控制器A。然后,我在其上推另一个视图控制器。让我们将其称为控制器B。之后,我要从视图控制器B中呈现视图控制器C。现在我只想关闭视图控制器B。

标签栏-A(导航控制器的根vc)->推送VC-> B->当前VC-> C

A到B使用self.navigationController.pushViewController(animated: true, completion: nil)

B到C像这样let vc = CViewController() vc.modalPresentationStyle = .fullScreen self.present(vc,animated: true,completion: nil)

现在当我使用[View Controller C]中的self.dismiss(animated: true, completion: nil)。它返回到根视图控制器,即vcA。我希望它转到VC B。

Video of issue

ios swift uinavigationcontroller presentmodalviewcontroller dismissviewcontroller
1个回答
0
投票

https://developer.apple.com/documentation/uikit/uiviewcontroller/1621505-dismiss

在ViewController B而非C上调用dismiss。>

编辑:这是Xcode 11和fullScreen模态表示的预期行为。

© www.soinside.com 2019 - 2024. All rights reserved.