Я изучал это и пробовал варианты в течение последних 2 дней, и я в тупике. У меня есть страница, где пользователь может провести по ячейке и видит следующие параметры
Когда пользователь нажимает кнопку «Сообщить о пользователе», он должен перейти на страницу с формой, которая позволяет ему подать жалобу о другом пользователе. Первый 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
}
Любая помощь очень ценится.