我一直在研究这个问题,并且在过去的两天里一直在尝试各种选择,但感到很困惑。我有一个页面,用户可以在其中滑动单元格并看到以下选项
当用户单击“报告用户”时,应将他们带到带有允许他们提交有关其他用户的投诉的表单的页面。第一个VC称为Messages,它应该传递报告用户和被报告用户的用户名。现在,仅在NSDictionary中传递报告用户。我尝试过的最新方法导致应用程序崩溃,并显示“ libc ++ abi.dylib:以类型为NSException的未捕获异常终止”。这是代码示例:
let shareAction = UITableViewRowAction(style: UITableViewRowActionStyle.default, title: "Report User" , handler: { (action:UITableViewRowAction!, indexPath:IndexPath!) -> Void in
let shareMenu = UIAlertController(title: nil, message: "Report User", preferredStyle: .actionSheet)
let editBtn = UIAlertAction(title: "Harrassment, Inappropriate Content, Abuse", style: .default) { (action:UIAlertAction) in
self.reportPost(indexPath)
}
//let harrassAction = UIAlertAction(title: "Harrassment", style: UIAlertActionStyle.default, handler: nil)
let cancelAction = UIAlertAction(title: "Cancel", style: UIAlertActionStyle.cancel, handler: nil)
shareMenu.addAction(editBtn)
shareMenu.addAction(cancelAction)
self.present(shareMenu, animated: true, completion: nil)
})
func reportPost(_ indexPath : IndexPath) {
let guest = self.guest[indexPath.row]
let storyboard = UIStoryboard(name: "ReportVC", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "ReportView") as! ReportViewController
vc.reportLbl.text = guest as? String
}
非常感谢您的帮助。