- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在 map 上有一个叠加层,我想更改其坐标。为了无缝地做到这一点,我将调用 setNeedsDisplayInMapRect:对 View 进行更改后的方法。
我已经通过更改 fillColor 测试了这一点,它工作正常:
overlayView.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.3];
[overlayView setNeedsDisplayInMapRect:mapView.visibleMapRect];
然而,我似乎碰壁了,试图同时更改我的叠加 View 的中心坐标(即 MKCircleView 和 MKCircle )。里面有一个方法 MKAnnotation ,MKCircle 符合,称为 setCoordinate: - 这似乎是我需要的。不幸的是,MKCircleView 中的 circle
属性是只读的。此外,MKOverlayView 中的 overlay
属性也是只读的。
实际上是否有一种方法可以更改叠加层的坐标,而无需删除叠加层 View 并添加新 View (这会导致屏幕上出现非常明显的闪烁。)?
最佳答案
这里出现同样的问题,所以我创建了一组方法并根据要求调用它。
-(void)removeAllAnnotationFromMapView{
if ([[self.tmpMapView annotations] count]) {
[self.tmpMapView removeAnnotations:[self.tmpMapView annotations]];
}
}
-(void)removeAllOverlays{
if ([[self.tmpMapView overlays] count]) {
[self.tmpMapView removeOverlays:[self.tmpMapView overlays]];
}
}
-(void)removeOverlayWithTag:(int)tagValue{
for (MKOverlayView *oView in [self.tmpMapView overlays]) {
if (oView.tag == tagValue) {
[self.tmpMapView removeOverlay:oView];
}
}
}
关于ios - 更改 MKOverlayView 的 MKOverlay 坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9058612/
我在这里遇到了几个类似的问题,关于获得具有良好性能的动画 MKOverlayView 工作属性(例如,动画雷达覆盖)。然而,虽然答案帮助我朝着正确的方向前进,但我仍然没有完全掌握我所缺少的东西。 我一
我想用混合模式绘制 map 叠加层。但是这段代码只是在没有任何混合模式的情况下绘制白色叠加层。我做错了什么? - (void)drawMapRect:(MKMapRect)mapRect zoomSc
我有一个路线叠加层要放置在 map 上。我必须调整它的旋转,使其与底层 map View 完全重叠。我怎样才能做到这一点?我找到了旋转的角度。如何旋转叠加 View ?到目前为止,我已经添加了叠加层,
我的 map 上有一个自定义 MKOverlayView,我想检测触摸。但是,我似乎无法让叠加层做出响应。我希望它会像忘记将 userInteractionEnabled 设置为 YES 一样愚蠢..
我目前有一个 UIView,它使用 OpenGL 在 MKMapView 之上绘制雷达数据。由于雷达图像的细节水平,需要 OpenGL(CoreGraphics 不够快)。 我正在绘制的所有图像都保存
在我的 MKOverlayView 中,我在绘制传递给 drawMapRect:mapRect:zoomScale:inContext 的 MKMapRect 之外的区域时遇到问题派生类。我试图为集合
我有一个自定义的 MKOverlay 和 MKOverlayView。创建 MKOverlayView 后,我可以设置 View 的 alpha: -(void)drawMapRect:(MKMapR
我有一个自定义的 MKOverlayView,它绘制了一条简单的线。在 drawMapRect: 中,我正在设置 CGContextSetLineWidth(context, 30); 完全放大时看起
我正在尝试使用以下代码为 iOS 5 中的 MapKit 覆盖 View (特别是 MKCircleView)的 alpha 值设置动画: -(void) animateCircle:(MKCircl
更新: 使用 MKOverlayView 投影到 MKMapView 的图像使用 Mercator projection ,而我用作输入数据的图像使用 WGS84 投影。有没有一种方法可以将输入图像转
我有一个 MKOverlayView,它将动画雷达数据显示为一系列图像。我遇到的问题是雷达图像被 MapKit 切割成图 block 。为了交换图像,我有一个定时器调用一个更新函数,该函数在我的叠加层
我使用以下代码在 iPad 上进行了测试。 如果我像下面的代码一样添加 MyOverlay,即使在 drawMapRect 中什么都不做,默认 map 图 block 的 MKMapView 加载也会
我正在开发一个高度基于 map 的应用程序,并且我正在使用 MBXMapKit 框架(基于 MapKit 构建)以便在我的 MapView 中显示自定义 Mapbox map 图 block 而不是默
map 叠加层的新手,但这是一个非常奇怪的问题。 我将 mapView.visibleMapRect 传递到我的覆盖实现并将其作为 boundingMapRect 返回,目前这很好 - 只是尝试在整个
我有一个涉及大量 MKOverlayView 的应用程序。每次将一个添加到 map 时,它也会添加到一个 NSArray 中。当用户希望停止添加覆盖时,我希望他们能够保存它们,并在以后能够访问它们。如
我在 map 上有一个叠加层,我想更改其坐标。为了无缝地做到这一点,我将调用 setNeedsDisplayInMapRect:对 View 进行更改后的方法。 我已经通过更改 fillColor 测
当有多个叠加层添加到 map 时,自定义 MKOverlayView 和标准 MKPolygonView 在某些缩放级别被裁剪时遇到问题。 The overlay of Algeria at two
我想用 png 制作 mapkit 叠加层,但我没有代码,也找不到任何教程。我是新手编码员,非常感谢您的帮助! 谢谢 最佳答案 您需要做一些事情才能做到这一点: 创建自定义 MKOverlayView
在向我的 map View 添加叠加层时,我收到以下警告: Sending 'MKOverlayView *const __strong' to parameter of incompatible t
我是一名优秀的程序员,十分优秀!