iOS Swift - UITableView didselectrowatindexpath crashes



首先,让我说这是一个晦涩难懂的问题,所以请原谅我:D。我有一个嵌入在导航控件中的表视图它是我的主视图。有一个"添加"按钮,我可以添加"东西",然后当它被触发时,它显示添加的项目在表视图上,也切换回主视图控制器与下面的代码

@IBAction func buttonAddPost_Click(sender: UIButton) {
postMgr.addPost(titleBox.text, description: descriptionBox.text, postDate: date)
self.navigationController.popToRootViewControllerAnimated(true)
}

上面的代码又把我带回到了主表视图控制器。

但是当我点击一个单元格以进入更详细的视图时,应用程序崩溃了。下面是代码

override func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {
let listingPage = self.storyboard.instantiateViewControllerIdentifier("listingPage") as PostListingTableViewController
self.navigationController.pushViewController(listingPage, animated: true)
}

"listingPage"是我要访问的新视图控制器的storyboard ID。我在其他地方使用了上面的技术几次,工作得很好,但我不确定这里出了什么问题。

Error I get:线程10 swift_dynamicCast,它突出显示0x1d7150: push %ebp线程1:EXC_BREAKPOINT(代码=EXC_I386_BPT)12交换。PostlistTableViewController ([app name])。[类名]),并突出显示didselectrowatindexpath...

请帮…

公里

异常告诉你问题是什么-你正在转换视图控制器as PostListingTableViewController,但返回的对象类型是PostlistTableViewController,因此转换产生异常。

你需要确定正确的类名是什么,要么更新你的故事板或你的didSelectRowAtIndexPath,使它们是一致的- Postlist或PostListing

最新更新