Я пытаюсь написать приложение для отслеживания планшетов для моей матери, но у меня возникла проблема. Я использую кнопку редактирования для доступа к статическому представлению таблицы, но она отказывается передавать объект лекарства.
Мне нужно быть в состоянии получить indexPath в подготовке (для: отправителя :), и я обычно использую tableView.indexPathForSelectedRow, а затем использую строку, чтобы вытащить правую из массива, но, как яс помощью кнопки это невозможно.
Я пытался использовать тег для хранения строки, я пробовал протокол, как предложено в других ответах, но у меня ничего не получилось.Приложение все еще падает, когда я пытаюсь перейти на экран редактирования.Ниже приведен мой текущий код, пройдено слишком много итераций, чтобы перечислить их все
@IBAction func editButtonTapped(_sender: UIButton) {
let point = sender.convert(CGPoint.zero to self.tableView)
buttonIndexPath = self.tableView.indexPathForRow(at: point)
preformSegue(withIdentifier: "showDetails", sender: sender)
}
, и мой код подготовки (для: отправителя :) выглядит следующим образом
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "showDetails" {
let destination = segue.destination as! MedicineDetailTableViewController
let selectedMedicine = medicines[(buttonIndexPath?.row)!]
destination.medicine = selectedMedicine
}
}
Я извиняюсь, еслиэто что-то глупое, что я скучаю, но я в конце остроумия.