相关疑难解决方法(0)

在Swift中的Nav Controller中弹出2个视图控制器

我已经找到了许多使用Objective-C 回弹2 UIViewControllersUINavigationController方法,但是当我尝试将其切换到Swift时它似乎没有用.

回弹的最佳方法是UIViewController什么?任何指导将不胜感激谢谢

uinavigationcontroller ios

38
推荐指数
5
解决办法
3万
查看次数

试图弹出到不存在的视图控制器

我正在尝试返回到以前的视图控制器,但我正在遇到的问题(据我所知)不应该发生.

我正在尝试做的简短描述:我有4个视图控制器:A,B,C和D.基本的UI流程是A - > B - > C - > D.在C完成工作后,我想要返回B.

我的代码:

let viewControllerArray = self.navigationController?.viewControllers
                for(var i=0;i<viewControllerArray?.count;i++){
                    if(viewControllerArray![i].isKindOfClass(InventoryListViewController)){
                        self.navigationController?.popToViewController(viewControllerArray![i], animated: true)
                    }
                }
Run Code Online (Sandbox Code Playgroud)

如果B仍然存在于navigationcontroller的堆栈中,这一切都可以正常工作.如果B已从堆栈中删除(由于与内存相关的原因),它会让我尝试弹出一个不存在错误的视图控制器(显然).我很困惑的是,如果B不再存在于堆栈中,那么If语句是否应该阻止调用popToViewController方法?

uinavigationcontroller ios swift

4
推荐指数
1
解决办法
5448
查看次数

如何从堆栈弹出视图控制器而不导航到它们

基本上,我有3个视图控制器,A,B和C.A和B都有一个后退按钮,当用户向后导航时,它会将顶视图控制器弹出堆栈.但是,一旦用户将其转到C,就没有选项可以倒退,我想在发生这种情况时将A和B从堆栈中弹出而不实际向后导航到A和B,因为这会导致其他地方的后退按钮出现问题应用程序,因为堆栈上有剩余的元素.你怎么建议这样做?

我不想尝试导航回弹出的视图控制器.

ios swift

2
推荐指数
1
解决办法
2474
查看次数

标签 统计

ios ×3

swift ×2

uinavigationcontroller ×2