- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何从 MapkitView 获取当前可见叠加层的列表(数组)?
背景 - 例如,我想在我的 mapkitview 上显示指向某些覆盖类型中心的方向箭头,但是如何获得可见的箭头?我看似乎没有办法做到这一点?那么我是否需要遍历所有覆盖层(实际上约为 8000 个)并自行检查以查看屏幕上会显示什么?如果 MapKit 已经有效地完成了这一点,作为决定在给定时间需要显示哪些覆盖层的一部分,这似乎是一种浪费。
最佳答案
我一直在修补一些类似的问题,我能想到的最有效的方法是将叠加层也添加为注释,因为 MKOverlay
实现了 MKAnnotation
。然后您就可以对当前显示的 mapRect 使用 annotationsInMapRect
。然而,这也会返回任何常规 MKAnnotations,并且只使用计算出的叠加中间部分。仅获取叠加层的唯一方法(据我所知)是遍历每个叠加层并使用:
-(BOOL)intersectsMapRect:(MKMapRect)mapRect;
在当前可见的 mapRect 上。如果您找到另一种方法,我会很高兴听到!
关于ios - 如何在 MapKit 中获取可见的叠加层? (即来自 Mapkit View 的 MKOverlay/MKOverlayRenderer),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37433336/
import UIKit import CoreData import Foundation import MapKit struct Geoshape : Codable { let coo
我试图在运行时修改 MKPolyline 的路径以避免它与另一个重叠。 我已经设法获得所有重叠点,我想做的是在 func createPath() 中MKPolylineRenderer 的添加一个偏
我无法让 MKPolygonRenderer 出现在我的 map 上。我有一个包含 MKMapView 的 MapViewController 类,并创建 CustomMapOverlay 实例以在
我正在尝试使用 MKOverlayRenderer 在 map 上呈现文本。我有一个现有的功能性 MKOverlayRenderer 渲染一组点,所以我唯一的问题是为 '-(void)drawMapR
我想在 mapview 上绘制带孔的圆(如 donut )。我的代码在这里。 - (void)drawMapRect:(MKMapRect)mapRect zoomScale:(MKZoomScale
我正在尝试使用 MKOverlayRenderer 绘制一条线。我的覆盖渲染器的 drawMapRect 大致是: let path = CGPathCreateMutable() CGPathMov
我将自定义 MKOverlayRenderer 添加到 MKMapView,然后我将其删除removeOverlays() 但是覆盖在那里停留了一段时间,mkmapview 更新绘图,大多数时候我将
我想在 map 叠加层中放置一张图片,该图片会随着 map 缩放。使用下面的代码,图像出现在 map View 中,但它被拉伸(stretch)以适合 View 。如何在叠加层内保持图像的原始纵横比?
MKMapView 正在按图 block 绘制 MKOverlayRenderer。问题是并非覆盖的所有图 block 都以相同的缩放比例绘制在屏幕上。同时,叠加层后面的 map 被精确且正确地绘制出
现在,由于它们在 MKOverlayView 中不再有 View ,并且它被称为 MKOverlayRenderer,我如何才能将 UIImageView 添加到我的 MKMapView 中?注意:我
我正在开发一个高度基于 map 的应用程序,并且我正在使用 MBXMapKit 框架(基于 MapKit 构建)以便在我的 MapView 中显示自定义 Mapbox map 图 block 而不是默
我正在为 iOS 7 更新一个 iOS 6 应用程序,发现在 iOS 7 中处理覆盖的方式已经完全改变。 我们正在整个 map 上绘制浅灰色叠加层。在 iOS 6 中一切正常,在 iOS 7 中我们没
我是代码新手,我正在尝试实现类似 Reminders 应用程序的功能: 我关注了另一个 answer实现它并 这里是我的代码: 在我的 ViewController 中: var circle = M
我构建了一个自定义 MKOverlayRenderer 以构建多边形、应用混合模式,然后将它们添加到 map View 。在我的 drawMapRect 函数中,我使用 CGPoints 数组来构建多
我收到这个错误 "Nil is incompatible with return type 'MKOverlayRenderer'". 这是我的代码: func mapView(mapView: MK
在 iOS 7 中,MKOverlayView 被 MKOverlayRenderer 取代。之前,我可以添加一个 UIImageView 作为 MKOverlayView 的 subview ,并访
对于一个应用程序,我必须在 MKMapView 上放置一个 MKCircle 注释。但是,需要移动/调整圆圈的大小。我知道有人问过这个问题,例如Moving MKCircle in MKMapView
在 MKOverlayRenderer 已经传递给 Map 之后,如何访问和修改它的 alpha 属性? 事实上,我可以在 rendererForOverlay 方法中修改 alpha 属性: - (
所以当我使用 Swift 1.2 时,这个函数运行良好,并为我提供了我需要的功能。 func mapView(mapView: MKMapView, rendererForOverlay overla
我有一个 map View ,如下所示 map 中绘制的线条使用的是MKPolyline。我使用苹果 MapKit 框架来显示我的 map 。我的要求是当用户在 Polyline 上选择注释时,折线应
我是一名优秀的程序员,十分优秀!