Добавление изображений на карту аннотации (Swift)
Я пытаюсь создать приложение, которое использует MapKit, и я хочу создавать аннотации на карте, но я изо всех сил стараюсь размещать изображения на аннотациях карты.
Я новичок в программировании на Swift, я работал над этим учебником, но я не могу найти в Интернете нигде, который бы помог вам реализовать изображение, большинство руководств используют Objective C.
Это мой класс аннотаций, который вызывается в моем View Controller.
Примечание. У меня есть маленькое изображение, которое я хочу показать в папке images.xcassets как mapAnnotation.
let buildingName = location(title: "Building Name",
locationName: "Location",
coordinate: CLLocationCoordinate2D(latitude: NUMBER, longitude: NUMBER))
theMapview.addAnnotation(buildingName)
Вот класс аннотации...
class location: NSObject, MKAnnotation {
let title: String
let locationName: String
let coordinate: CLLocationCoordinate2D
//Retrieve an image
var image = UIImage(named: "mapAnnotation")
init(title: String, locationName:String, coordinate: CLLocationCoordinate2D) {
self.title = title
self.locationName = locationName
self.coordinate = coordinate
self.image
super.init()
}
var subtitle: String {
return locationName
}
}
1 ответ
Вы на правильном пути.
MKAnnotation - это абстрактный объект, в котором хранится информация об аннотации карты.
Теперь вам нужно создать собственный подкласс MKAnnotationView. Это фактический объект вида, который добавляется к виду карты в месте расположения аннотации. Это может быть так же просто, как подкласс UIImageView.
Затем вам нужно будет реализовать метод MKMapViewDelegate mapView:viewForAnnotation:
, Этот метод принимает аннотацию в качестве входных данных и возвращает MKAnnotationView.
Посмотрите документы Xcode на MKAnnoationView
и mapView:viewForAnnotation:
метод для получения дополнительной информации.