2015-10-06 25 views
3

嗨下面的代碼是在swift1.2工作正常,但是當我升級到2.0 SWIFT:從[[NSIndexPath]?'下載的Swift 2.0錯誤爲「[indexpath]」只有解開可選

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

它顯示了以下錯誤:

從低迷現狀'[NSIndexPath]?到'[indexpath]'只展開可選

有關如何解決此問題的任何線索?

回答

5

你不必強制類型轉換了,indexPathsForSelectedRows返回正確的類型:

func deselectAllRows() { 
    if let selectedRows = tableView.indexPathsForSelectedRows { 
     for indexPath in selectedRows { 
      tableView.deselectRowAtIndexPath(indexPath, animated: false) 
     } 
    } 
} 
+0

呀它的工作非常感謝的人 –

+0

不客氣。 – Moritz

1

tableView.indexPathsForSelectedRows返回[NSIndexPath]?,所以你不需要輸入它。你可以只寫它想:

func deselectAllRows() 
{ 
    if let selectedRows = tableView.indexPathsForSelectedRows 
    { 
     for indexPath in selectedRows 
     { 
      tableView.deselectRowAtIndexPath(indexPath, animated: false) 
     } 
    } 
} 
相關問題