如何在iPhone SDK中使用OpenLayers

3

我想使用OpenLayers创建自定义地图,但是我不知道如何使用OpenLayers。我想在iPhone上创建地图时不使用Google地图,而是使用其他方式来填充自己的数据。我认为这可以通过OpenLayers实现,但我不知道该如何操作。请帮助我。


1
如果您说明了您尝试使用OpenLayers的代码以及为什么它没有起作用,您将获得更好的响应。此外,还可以尝试OpenLayers教程 - Ollie
3个回答

1

OpenLayers是一个JavaScript库。作为一个基于客户端的地图查看工具,它允许"显示从任何来源加载的地图瓦片、矢量数据和标记"。它类似于Leaflet

它们两个只有在您想要在Web上渲染时才有用(在这种情况下,您需要从某处获取地图瓦片或地图图像(例如OpenStreetMap),或者设置自己的地图服务器)。

如果您想在iOS上本地呈现地图,则可能需要一个工具包来获取和呈现地图瓦片或图像。以下是一些可能有帮助的工具:



你好。哪个建议是免费开源的? - famfamfam
据我所知,只有WhirlyGlobe-MaplyTangram ES是自由开源软件。其他所有软件都是开源的,但不一定免费。 - nunop
谢谢您。我看到TanGram ES需要使用API密钥,因此它不是免费的。WhirlyGlobe只是地图工具包,它不包含地图服务,因此我可以使用一些方法,如添加标记、折线或更改相机视图......如果我错了,请告诉我,谢谢您。 - famfamfam
据我所知,您可以使用Tangram消费任何瓦片服务,从OpenStreetMap到GeoJSON/TopoJSON矢量数据。只有当您选择付费服务时才需要支付费用。此外,仅因为您需要API密钥并不意味着它是付费的。 :-) 例如:Netzen - nunop

0

你可以通过phonegap来使用它。

如果你不想使用phonegap,那么你可以简单地使用UIWebView。你可以在其中加载你的数据。 在UIWebView中加载HTML文件。HTML文件包括JavaScript、CSS和图像文件,没有任何问题。

NSString *fullPath = [NSBundle pathForResource:@"filename" ofType:@"html" inDirectory:path];
 [yourWebView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:fullPath]]];

欲了解更多OpenLayers的信息,请访问。


-1

听起来你只是想在iOS应用程序中提供自定义地图。如果是这样,MapBox-iOS-SDK将允许您使用许多不同的地图源,而无需使用Web视图。如果您查看github上的MapBox项目,它们还有帮助您创建SDK可用的地图的工具。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接