问题标签 [mkmapsnapshotter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2510 浏览

ios - 如何在 swift 3 中将 MKPolylines 添加到 MKSnapShotter?

有没有办法截取 mapView 的屏幕截图并包含折线?我相信我需要在 MKSnapShotter 返回的图像上绘制 CGPoint,但我不确定如何这样做。

当前代码

0 投票
1 回答
1657 浏览

ios - 如何在后台使用 MKMapSnapshotter?

我有一个应用程序应该在后台获取对象并使用它们的位置数据为它们生成地图快照。自然地,我尝试了 MKMapSnapshotter。

事实证明(在对黑色地图快照感到困惑数周之后)该工具似乎仅在从主线程调用时才有效,如下所示:

这是一个框架错误吗?

问题:这仅在我的应用程序处于前台时运行。

0 投票
2 回答
5760 浏览

swift3 - Swift 3 将自定义注释引脚添加到 MKMapSnapShotter 快照

我正在自己学习 Swift 3,我目前的学习项目涉及允许用户拍摄照片并获取固定当前位置的地图快照。

我依靠2015 年 8 月的这个答案2016 年 6 月的这个答案作为指导,但我仍然找不到正确的路径。

此刻,我可以...

  1. 从缓冲区中获取照片
  2. 获取地图快照

但我就是无法放置别针。我知道我的代码不完整且无效——所以这不仅仅是一个调试问题。这是我一直在使用的(以及基于上面链接的许多变体):

我已经被困了好几天了,所以我当然会很感激任何见解。谢谢!

0 投票
0 回答
95 浏览

ios - 地图上的高分辨率屏幕截图

我想从我的 Mapview 的特定位置截屏。我使用了以下代码。它工作正常,但屏幕截图有点模糊。我想要高分辨率的屏幕截图。请检查我的代码。谢谢。!

0 投票
1 回答
68 浏览

ios - Objective-C:将地图快照传递给 prepareForSegue 中的视图控制器

我试图从一个mapView包含该 mapView 上所选位置的快照的页面转移到一个页面。

这是我的prepareForSegue方法:

我可以在快照程序的完成处理程序之外将信息传递给目标 VC。代码也可以正常工作——snapshot.image 确实返回 UIImage*——但是它没有被传递到目标视图控制器。当我尝试访问该视图控制器中的 mapSnapshot 属性时,我得到 (null)。

0 投票
0 回答
148 浏览

ios - 模拟器中的 iOS MKMapSnapshotter 不起作用?

我拼命尝试让 MKMapSnapshotter 在模拟器上运行。然而,它在真实设备上没有问题,但在模拟器上却没有,这给我带来了一些麻烦,因为我没有作为硬件的不同 iOS 版本。

不在模拟器上工作是故意的吗?我没有发现任何关于此的信息。

这里的代码显然只适用于真实设备:

PS:在 XCode 9.4.1 中尝试过

0 投票
1 回答
891 浏览

ios - 如何在 MKMapSnapshotter 上绘制 CLLocationCoordinate2Ds(在 mapView 打印图像上绘制)

我有带有数组的 mapView CLLocationCoordinate2D。我使用这些位置在我的 mapView 上画线MKPolyline。现在我想将它存储为 UIimage。我发现存在类MKMapSnapshotter,但不幸的是我无法在其上绘制叠加层“Snapshotter 对象不会捕获您的应用创建的任何叠加层或注释的视觉表示。” 所以我只得到空白地图图像。有什么方法可以用我的叠加层获取图像吗?

如何在此图像上放置叠加层?或者也许还有其他方法可以解决这个问题。

0 投票
1 回答
228 浏览

swift - 使用 SDWebimage 下载并缓存 MKMapSnapshotter 图像

我想在中显示 mapView UITableViewCells

所以我实际上写了这段代码

这种方法的问题在于它会为 mapView 位置设置动画,然后在将单元格出列时添加标记。

我采用了另一种方法,即使用MKMapSnapshotter

这工作正常,但我不能基于任何缓存图像。

所以我想要的帮助是如何使用 SDWebimage 下载和缓存mapImage

0 投票
1 回答
439 浏览

swift - 如何在swift中为路径设置fillColor和strokColor

我正在使用MKMapSnapshotter.

我在图像上画线UIGraphicsGetCurrentContext()用于显示多边形,

我可以设置线条颜色,但无法为多边形设置填充颜色。

下面是代码

我怎样才能做到这一点?

解决方案:

0 投票
1 回答
452 浏览

swift - 使用 MKMapSnapshotter 创建可点击的地图预览

我有一张地图,目前显示用户的当前位置,没有 pin 来显示他们的确切位置。我想让地图成为用户设定位置的照片。我只知道如何显示他们的设备在哪里,并且需要他们能够设置他们的操作基础。我不需要具体地址。我只需要他们居住的城市。

然后我需要能够点击图像。点击时,图像会使 MapKit 全屏并具有交互性。然后,他们可以放大地图并查看其他用户在哪里设置他们的运营基地。

我是编码新手,不知道如何让用户设置永久位置,即使他们在全国各地移动。我也不知道如何设置地图快照,并在点击以显示完整的地图视图时展开。

我目前只能询问是否可以激活位置服务,然后在加载时显示他们的地图视图。这是代码:

提前感谢您的帮助。我真的需要在这个应用程序上取得一些进展,我似乎找不到任何关于如何做到这一点的教程或网络结果。

编辑:

我尝试添加一个将我的 UIImage 转换为快照的函数。我可以返回一张图片,但它没有显示我的位置,而且它比我的 UIImage 小。我已经编辑了上面的代码以反映我所做的更改。我不知道我做错了什么。