iOS和地图:如何拦截触摸手势、获取坐标和检索国家名称
我正在开发一个游戏,用户必须在世界地图上选择一个国家 因此,我想知道:iOS和地图:如何拦截触摸手势、获取坐标和检索国家名称,ios,mapkit,google-maps-sdk-ios,mkreversegeocoder,mapbox,Ios,Mapkit,Google Maps Sdk Ios,Mkreversegeocoder,Mapbox,我正在开发一个游戏,用户必须在世界地图上选择一个国家 因此,我想知道: 显示交互式地图的最佳方法是什么?我在网上找到了这个框架/组件,但我也在评估MapKit、MapBox和Google Maps框架。在你看来,从你自己的经验来看,什么是最好的选择 给定一些GPS坐标,如何检索国家名称?(我只对国家名称感兴趣,不感兴趣) 是否有实现此类应用程序的示例代码或教程 谢谢 您还应该查看地图框。iOS SDK支持完全、可配置的交互。有一个示例应用程序可以将点击转换为被点击国家的名称/国旗 在Google
谢谢 您还应该查看地图框。iOS SDK支持完全、可配置的交互。有一个示例应用程序可以将点击转换为被点击国家的名称/国旗
在Google Map SDK for iOS中,您必须尝试使用此委托方法 它提供用户点击的坐标
- (void)mapView:(GMSMapView *)mapView
didTapAtCoordinate:(CLLocationCoordinate2D)coordinate
{
NSLog(@"You tapped at %f,%f", coordinate.latitude, coordinate.longitude);
}
通过这个特定的坐标,你可以找到国家
我想你必须这么做。这会对您有所帮助。谢谢您的提示!如果我理解的很好,您链接的示例利用了MapBox API的离线版本,因此不需要订阅付费计划。对吗?这可以在线或离线工作。示例应用程序显示了一个在线源,它需要一个计划(根据使用情况,可能有资格获得免费)或一个支持UTFGrid交互的tile服务器。无论哪种方式,地图都会变成MBTiles格式,可以上传到MapBox主机或直接在设备上使用。这里有一个很好的指南,可以帮助您创建一个自定义地图,并在交互性数据中嵌入类似国家名称的内容:再次感谢您提供的提示!我查看了MapKit iOS示例,发现MBTiles数据库非常大(大约20MB)。这意味着将其用于应在应用商店上发布的iOS应用程序是不实际的。所以我的问题是:假设我决定使用MapBox,有没有可能开发一个具有上述要求的完全离线工作的应用程序?好吧,超高限制是50MB,所以这不是一个荒谬的大小,但是,为了离线使用特定大小的地图,您必须以特定大小预绑定或在发布后下载MBTiles。你能压扁它的东西太多了。谢谢!看起来很简单:-)这只是告诉你坐标。您仍然需要确定包含该点的多边形,并将其映射到一个国家名称。@incaus比您更适合作为提示!实际上,从GPS坐标中检索国家名称非常简单。您可以使用MapKit或GoogleMaps API的反向地理编码器来实现这一点。