Прямо сейчас, когда я нахожу левую кнопку на ячейке, чтобы показать «любимую» кнопку, и щелкните по ней, на случайной ячейке вместо ярлыка, на который я надавил, появляется метка «Избранное». Как заставить ярлык «Избранное» появляться/исчезать в правой ячейке, когда я нажимаю на назначенную кнопку?Как назначить ярлык определенной ячейке?
Сейчас мой код в функции editActionsForRowAt является:
internal func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
let cell = tableView.dequeueReusableCell(withIdentifier: "TableViewCell", for: indexPath) as! TableViewCell
let favorite = UITableViewRowAction(style: .normal, title: "Favorite") { action, index in
cell.favoriteLabel.text = "Favorite"
tableView.reloadRows(at: [indexPath], with: .none)
}
favorite.backgroundColor = UIColor.orange
return [favorite]
}
Проблема установки «favoriteLabel» = «Фаворит» не устанавливает «favoriteLabel» правой ячейки в «Избранные»
** Никогда никогда не создавайте повторно используемую ячейку вне 'cellForRowAtIndexPath'. Обновите модель (массив источников данных) и перезагрузите строку или весь вид таблицы. – vadian
@vadian, как я могу убедиться, что он обновляет правильную ячейку, хотя (это моя проблема). Также, как еще я могу получить доступ к своей «любимойLabel», если моя ячейка создана в другой функции? –
Используйте метод cellForRow (at:) 'вместо' dequeueReusableCell (withIdentifier: for:) ' – rmaddy