gpt4 book ai didi

ios - MapView 注释中的较长字幕(swift)

转载 作者:行者123 更新时间:2023-11-30 12:03:11 25 4
gpt4 key购买 nike

我有一个带有显示标题和副标题的注释的 map View 。字幕有时比注释的宽度长,所以我想知道是否可以使它们成为多行?到目前为止,它的编码如下:

func annotate(newCoordinate, title: String, subtitle: String) {
let annotation = MKPointAnnotation()
annotation.coordinate = newCoordinate
annotation.title = title
annotation.subtitle = subtitle
self.map.addAnnotation(annotation)
}

然后我设置了一些选项

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? {...}

这与这里无关。

是否可以制作自定义注释 View ?我尝试了几件事,但没有任何效果。我能得到的最接近的是添加一个按钮来单独显示较长的字幕,但我宁愿将其放在注释中。

可能吗?

最佳答案

我想通了,我在 viewForAnnotation 中添加了一个标签,它就起作用了

́\_(ツ)_/́

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? {

if annotation is MKUserLocation {
//return nil so map view draws "blue dot" for standard user location
return nil
}

let reuseId = "pin"

var pinView = mapView.dequeueReusableAnnotationViewWithIdentifier(reuseId) as? MKPinAnnotationView
if pinView == nil {
pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseId)
pinView!.canShowCallout = true
}
else {
pinView!.annotation = annotation
}

//THIS IS THE GOOD BIT
let subtitleView = UILabel()
subtitleView.font = subtitleView.font.fontWithSize(12)
subtitleView.numberOfLines = 0
subtitleView.text = annotation.subtitle!
pinView!.detailCalloutAccessoryView = subtitleView


return pinView
}

关于ios - MapView 注释中的较长字幕(swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46970581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com