2016-09-25 41 views
3

我刚刚迁移到Xcode 8.0,并从Swift 2.2迁移到Swift 3.0。[UIViewController]类型的表达式?未使用

我有这种方法的UITableViewController:

@IBAction func cancelToLastLevelNavigationController(_ segue:UIStoryboardSegue) { 

    // go back to last table view controller 
    let count = self.navigationController?.viewControllers.count 
    self.navigationController?.popToViewController((self.navigationController?.viewControllers[count! - 1])!, animated: true) 
} 

现在Xcode是在告诉我“型[UIViewController中]未使用的表达?”,并指出“popToViewController”的第一个“P”。

为什么?该方法仍然做它应该做的。

+0

请问,你为什么低估这个问题?尽管有类似的话题,但stackoverflow并未向我显示其他问题。这不是我的错。 – Nina

回答

19

写这样的:

_ = self.navigationController?.popToViewController... 

你的代码工作完全一样,并警告消失。

+0

我必须在更改后清理项目,但它确实起作用并且警告消失了!谢谢! – Nina

+0

@Nina看看现在是否没有'_ ='。我对此很好奇。在Swift 3的开发过程中,苹果对这个警告感到震惊...... – matt

+0

当我在没有“_ =”的情况下尝试时,警告再次出现。 – Nina