Не удалось сообщить пользователю, что элемент не был удален в UITableViewDatasource - PullRequest
0 голосов
/ 11 октября 2018

Недавно я разделяю часть модели моего UITableView на реализацию UITableViewDataSource (эта реализация является отдельным классом).Хотя записи таблицы могут быть удалены, и удаление должно быть сделано также в REST API.Есть ли вариант, как сообщить пользователю, что запись не была удалена, экв.произошла ошибка сети?

Я могу сделать что-то подобное (в реализации UITableViewDataSource:

func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
    if (editingStyle == UITableViewCellEditingStyle.delete) {
        let item = getItem(indexPath)
        restApi.delete(item.id, callback: { ok in
            if (ok) {
                tableView.reloadData()
            } else {
                let alert = UIAlertController(title: "Warning", message: "Deletion was not successfull.", preferredStyle: .alert)
                let okAction: UIAlertAction = UIAlertAction(title: "OK", style: .cancel, handler: nil)
                alert.addAction(okAction)
                tableView.superview.present(alert, animated: true, completion: nil)

            }
        })
    }
}

Но мне не нравится это решение - отображение предупреждения из модели. Есть ли какой-либо стандартный способсказать, что эта фиксирующая функция не удалась?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...