"MKMapItem" не конвертируется в "CLPlacemark"

Как я могу конвертировать MKMapItem в CLPlacemark в Свифте?

Мой код дает мне ошибку компилятора 'MKMapItem' is not convertible to 'CLPlacemark':

var mapItems:[MKMapItem] = []
let mi = self.mapItems[indexPath.row];
ann.placemark = mi as CLPlacemark

В ObjC я только что сделал ann.placemark = (CLPlacemark *)mi;

1 ответ

Решение

MKMapItem не подкласс CLPlacemark, Я не очень знаком с MapKit, так что, возможно, было действительно возможно напрямую MKMapItem к CLPlacemark без проблем.

MKMapItem действительно есть свойство под названием placemark с типом MKPlacemark хоть. MKPlacemark это подкласс CLPlacemark и может быть использован как таковой.

Другие вопросы по тегам