我有一个UINavigationController,堆栈中有多个UIViewControllers。我现在想把一个特定的UIViewController从堆栈带到顶部而不会弹出其他UIViewControllers。
我能做到这一点吗?......考虑到它的FIFO?
答案 0 :(得分:0)
答案 1 :(得分:0)
我能够使用以下代码
执行此操作for controller in navigationController?.viewControllers {
if controller is MyViewController {
nextController = controller
}
}
var controllers = navigationController?.viewControllers
controllers.removeAtIndex(controllers.indexOf(nextController!)!)
controllers.append(nextController!)
navigationController?.setViewControllers(controllers, animated: false)
但是......引用着名的杰夫Goldbloom ......太忙了,想知道我们是否可以停下来思考是否应该......这可能是不可接受的,但似乎有效
将视图控制器堆栈作为数组操作有一些含义...例如。根视图控制器会发生什么...你是否在故事板中定义了它?