Таким образом, я смог анимировать выноску аннотации, когда выбранная ячейка таблицы была выбрана следующим образом. Довольно просто благодаря indexPath.
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let indexPath = indexPath.row
myMap.selectAnnotation(pinArray[indexPath] , animated: true)
}
Однако я не понимаю, как этого добиться, когда я выбираю аннотацию и хочу, чтобы ячейка таблицы загорелась. Я пытался установить переменную для indexPath, но поскольку аннотация не имеет нижнего индекса, я не могу выполнить это. Следовательно, как я смогу выполнить аннотацию к выбранной логике ячейки?
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
//Magic
}
Обновление -
в настоящее время код, который я должен выделить ячейку таблицы, соотнесенный с аннотацией карты, это.
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
let index = pinArray.index(of: view.annotation as! AnnotationPin)
let indexPath = IndexPath(row: index!, section: 0)
myTable.selectRow(at: indexPath, animated: true, scrollPosition: .top)
}
К сожалению, я получаю это сообщение об ошибке, когда нажимаю на аннотацию карты.
- [UITableView _contentOffsetForScrollingToRowAtIndexPath: atScrollPosition: usingPresentationValues:]: строка (72) за пределами (17) для раздела (0).
Я не понимаю, поскольку в массиве всего 12 записей, поэтому я совершенно не понимаю, как можно упомянуть, что строка выше 15 выходит за границы.