我有一個名爲Objects
的數組,它是NSManagedObject
的一個子類,並在UITableView
中顯示它們的屬性。indexPathForSelectedRow返回意外的零
我有一個SEGUE看對象,這是使用手勢執行的細節 - 直到我用prepareForSegue
到UITableViewCell
的數據傳遞給segueing ViewController
能正常工作。但是,當使用 let indexPath = self.table.indexPathForSelectedRow
, 我得到一個無選定的行的值,因此應用程序在嘗試傳遞數據時崩潰。這裏是一個完整的代碼示例:
if segue.identifier == "showDetails" {
let vc = segue.destinationViewController as! DetailsViewController
let indexPath = self.table.indexPathForSelectedRow
if indexPath == nil { print(index path is NIL")}
let selectedObject = self.objects[indexPath!.row]
vc.setting = setting
vc.selectedObject = selectedObject
}
有誰知道什麼可能會出錯?我在另一個ViewController中做了同樣的事情,它工作正常。此外,我試圖實現另一個時間單元格被選中,但我不能撥打prepareForSegue
使用功能didSelectRowAtIndexPath
,但可以在我的其他ViewController
- 我不知道這些信息是否相關或可能表明問題可能是什麼。
如何觸發segue? – vacawama
@vacawama爲'objectDetails'傳遞數據的segue可以工作,並通過一個手勢來完成。另一個手勢,我試圖執行一個segue,我試圖在選擇單元格時執行。 – RileyDev
只是爲了確認,是self.table!= nil? – kerry