类型UITableView不符合prototcol IntervalType

时间:2014-08-07 07:28:33

标签: ios uitableview swift

我已升级到xcode 6 beta 5.它出现了一个新错误:类型UI​​TableView不符合协议IntervalType。

func numberOfSectionsInTableView(tableView: UITableView!) -> Int {
    switch tableView{
    case tableViewPopular: // ERROR
        println("tableViewPopular")
        return 1
    case tableViewSearch: // ERROR
        print("tableViewSearch ")
        println("sceneKeys.count --> \(sceneKeys.count)")
        return sceneKeys.count
    case self.searchDisplayController.searchResultsTableView:
        println("SearchDisplayController")
        return 1
    default:
        println("default")
        return 0
    }
} 

我该如何解决?

2 个答案:

答案 0 :(得分:3)

如果您明确地展开所有tableView,它会起作用:

override func numberOfSectionsInTableView(tableView: UITableView!) -> Int {
    switch tableView{
    case tableViewPopular!:
        println("tableViewPopular")
        return 1
    case tableViewSearch!:
        print("tableViewSearch ")
        return 2
    case self.searchDisplayController.searchResultsTableView!:
        println("SearchDisplayController")
        return 3
    default:
        assert(false, "This should not happen!")
        return 0
    }
}

这对我来说似乎有点奇怪,因为所有这些属性都已声明为 隐式展开,所以这可能是一个Swift错误。

答案 1 :(得分:0)

试试这个,

 if tableView == tableViewPopular
{
// Statements
}
else if tableView ==  tableViewSearch
{
// statements
}