在Swift中遇到for循环问题

塞德法

我试图遍历Swift中的一系列ViewController,但是不幸的是我遇到了我不理解的编译错误。这是我的相关代码:

let alertController = UIAlertController(title: "Error", message: "You have an error.", preferredStyle: .Alert)

let OKAction = UIAlertAction(title: "OK", style: .Default) { (action:UIAlertAction!) in
    print("you have pressed OK button");
    //below is my loop causing me trouble
    for (i in 0..< self.navigationController?.viewControllers.count) {
        if (self.navigationController?.viewControllers[i].isKindOfClass(MyViewController) == true) {
            self.navigationController?.popToViewController(self.navigationController!.viewControllers[i] as! MyViewController, animated: true)

            break;
        }
    }
}
alertController.addAction(OKAction)

self.presentViewController(alertController, animated: true, completion:nil)

但是,我不断收到来自Xcode的错误消息,要求我在for循环语句中插入“,”作为分隔符。有人可以看到我在做什么错吗?

邓肯

而不是使用数字for循环,为什么不在语法中使用for ...?

if let navController = self.navigationController {
  for aVC in navController.viewControllers {
    if aVC..isKindOfClass(MyViewController) {
      navController.popToViewController(aVC, animated: true)
      break
    }
  }
}

我使用了可选的绑定将折叠self.navigationController?到navController中,并在语法上使用...。

另外,我认为您无需将视图控制器转换为您的MyViewController类,因为您所要做的全部就是将其发送到popToViewController函数,该函数需要ANY UIViewController

编辑:

如果需要数组中各项的索引,则可以使用enumerate数组中函数,函数返回一组元组:

for (index, aVC) in navController.viewControllers.enumerate() {
  //Do stuff
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Swift中遇到for循环问题

来自分类Dev

在 Swift 5 中遇到 while 循环问题

来自分类Dev

在Swift中遇到数组问题

来自分类Dev

我在VBA中遇到循环问题

来自分类Dev

我在VBA中遇到循环问题

来自分类Dev

我在Swift中遇到Nil Coalescing的问题

来自分类Dev

遇到循环问题

来自分类Dev

在循环中遇到问题并在php中中断

来自分类Dev

在python中练习循环时遇到问题

来自分类Dev

使用非关键字在 Python 中遇到 For 循环问题

来自分类Dev

我在 Python 中循环上传文件时遇到问题?

来自分类Dev

在 Python 中浏览我的循环时遇到问题

来自分类Dev

遇到无限循环问题(python)

来自分类Dev

我的JavaScript for循环遇到问题

来自分类Dev

接口和foreach循环遇到问题

来自分类Dev

接口和foreach循环遇到问题

来自分类Dev

我的JavaScript for循环遇到问题

来自分类Dev

Swift:在Swift中使用Objective-C中声明的枚举时遇到问题

来自分类Dev

循环访问嵌套把手导入数组中的特定元素时遇到问题

来自分类Dev

使用xsl:for-each循环而不是xsl:variable中的select =“ expr”进行查询时遇到的问题

来自分类Dev

在代码中为HTML表创建循环并为表分配单元时遇到问题

来自分类Dev

在 C++ 中循环遍历数组时遇到问题

来自分类Dev

在DirextX中遇到拓扑问题

来自分类Dev

在C ++中遇到#ifndef问题

来自分类Dev

我在Eclipse中遇到的问题

来自分类Dev

在C ++中遇到宏问题

来自分类Dev

路由问题,在 Laravel 中遇到问题

来自分类Dev

Swift中的循环延迟问题,有什么区别?

来自分类Dev

在Swift中,以下for循环语法有什么问题?