Удаление объектов карты из coreData с помощью оповещения VC, а затем сохранение - PullRequest
0 голосов
/ 28 августа 2018

У меня есть карта с булавками, которые загружаются из coreData. В представлении аннотации у меня есть кнопка, которая вызывает контроллер представления предупреждений. Отсюда цель состоит в том, чтобы пользователь мог удалить аннотацию или отредактировать информацию и повторно сохранить ее.

Чтобы отредактировать информацию, я заставлю пользователя перейти на новый виртуальный канал, отредактировать информацию и сохранить в coreData с помощью try context.save () Если вы не покажете мне лучший способ!

Проблема, о которой я прошу помощи, - удаление прямо из предупреждения. Я могу удалить аннотацию отсюда, но как только карта перезагружается, аннотация возвращается, потому что они загружаются из coreData. вот код, который я использую в своем предупреждении

extension MapViewController: ExampleCalloutViewDelegate {
  func mapView(_ mapView: MKMapView, didTapDetailsButton button: UIButton, for annotation: MKAnnotation) {



    let alert = UIAlertController(title: "Edit or Delete", message: "Any changes are permenate!", preferredStyle: .alert)
    let cancelAction = UIAlertAction(title: "Cancel", style: .cancel, handler: nil)



    alert.addAction(UIAlertAction(title: "Add more info and save on map ", style: .default, handler: {action in self.performSegue(withIdentifier: "saveDetails", sender: self)}))

    alert.addAction(UIAlertAction(title: "Delete", style: .default, handler: {action in self.map.removeAnnotation(annotation)}))
    alert.addAction(cancelAction)

    self.present(alert, animated: true, completion: nil)
  }
}
...