首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从MKMapSize中计算CGSize

如何从MKMapSize中计算CGSize
EN

Stack Overflow用户
提问于 2018-03-14 09:14:14
回答 1查看 544关注 0票数 0

我使用的是MapKit,在这里,我跟随MKAnnotationView绘制了一个红色的CGSize(width: 26, height: 26)圆圈。

如何从MKMapSizeCGSize计算尺寸MKAnnotationView

我得到了带有几个MKMapViewMKOverlay,当用户点击任何覆盖,以便mapView的区域将被更改为覆盖边界时,这是很好的,但是如果点击的坐标位于MKAnnotationView (红色圆)的坐标区域内,则需要停止更改区域。

我在这里寻找其他答案,但没有运气,我试着:

代码语言:javascript
运行
复制
let zoomLevel = log2(360 * ((Double(self.frame.size.width) / 256) / mapView.region.span.longitudeDelta)) - 1
MKMapSize(width: 26 * zoomLevel, height: 26 * zoomLevel)
EN

回答 1

Stack Overflow用户

发布于 2018-03-15 09:50:33

下面是MKMapView方法,它具有将CGSize转换为MKCoordinateRegion的神奇功能

代码语言:javascript
运行
复制
mapView.convert(rect: CGRect, toRegionFrom: UIView?)

使用:

代码语言:javascript
运行
复制
let customAnnotationSize = CGSize(width: 26, height: 26)
let region = mapView.convert(CGRect(origin: .zero, size: customAnnotationSize), toRegionFrom: mapView)

拥有一个region是很重要的,最后我检查注释的坐标是否在那个region中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49273645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档