Swift 2.0错误来自'[NSIndexPath]?' 到'[indexpath]'只能解包可选

Zya*_*nga 3 uitableview ios swift swift2

嗨下面的代码在swift1.2中工作正常,但当我升级到swift 2.0时:

func deselectAllRows() {
    if let selectedRows = tableView.indexPathsForSelectedRows as! [NSIndexPath] {
        for indexPath in selectedRows {
            tableView.deselectRowAtIndexPath(indexPath, animated: false)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它显示以下错误:

来自'[NSIndexPath]?' 到'[indexpath]'只能解包可选

有关如何解决此问题的任何线索?

aya*_*aio 5

您不必再强制类型转换,indexPathsForSelectedRows返回正确的类型:

func deselectAllRows() {
    if let selectedRows = tableView.indexPathsForSelectedRows {
        for indexPath in selectedRows {
            tableView.deselectRowAtIndexPath(indexPath, animated: false)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)