У меня есть кнопка в правой части экрана, это barButtonSystemItem: .edit
, и она используется для перевода tableView
в режим редактирования.Я хочу, чтобы, когда пользователь нажал на него, он изменился на barButtonSystemItem: .done
и закрыл tableview
из режима редактирования.Просто чтобы быть понятным, каждый раз, когда нажимается barButton, его тип должен быть изменен с редактирования на готово.
Вот мой код, но он всегда остается с правкой, а не меняется на готово
fileprivate func addBarButton() {
if tableView.isEditing {
navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(editButtonAction))
} else {
navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .edit, target: self, action: #selector(doneButtonAction))
}
}
@objc func editButtonAction(sender: UIBarButtonItem) {
tableView.isEditing = !tableView.isEditing
}
@objc func doneButtonAction(sender: UIBarButtonItem) {
tableView.isEditing = !tableView.isEditing
}
override func viewDidLoad() {
super.viewDidLoad()
addBarButton()
tableView?.isEditing = true
}