如何在swift中为ios的谷歌地图sdk添加地图视图的标记
发布时间:2020-12-14 04:29:30 所属栏目:百科 来源:网络整理
导读:试图在谷歌地图上添加一个标记,但是当addMarker()函数调用时应用程序崩溃了,异常详细信息如下, 由于未捕获的异常’GMSThreadException’而终止应用,原因是:’所有对iOS版Google地图SDK的调用必须来自UI线程’ 仅供参考vwGogleMap是全球性的,我正在尝试绘制
试图在谷歌地图上添加一个标记,但是当addMarker()函数调用时应用程序崩溃了,异常详细信息如下,
由于未捕获的异常’GMSThreadException’而终止应用,原因是:’所有对iOS版Google地图SDK的调用必须来自UI线程’ 仅供参考vwGogleMap是全球性的,我正在尝试绘制标记. func addMarker() -> Void { var vwGogleMap : GMSMapView? var position = CLLocationCoordinate2DMake(17.411647,78.435637) var marker = GMSMarker(position: position) marker.title = "Hello World" marker.map = vwGogleMap } 任何帮助,将不胜感激, TIA. 解决方法
在闭包中执行UI更新时(在我的情况下 – 绘制标记),请记住只获取主线程并在主线程上执行UI操作.
错误我所做的是,我正在尝试在Web服务完成块中绘制标记. dispatch_async(dispatch_get_main_queue(),{ var position = CLLocationCoordinate2DMake(17.411647,78.435637) var marker = GMSMarker(position: position) marker.title = "Hello World" marker.map = vwGogleMap }) // For swift 3.0 support. // 1. Get Main thread DispatchQueue.main.async { // 2. Perform UI Operations. var position = CLLocationCoordinate2DMake(17.411647,78.435637) var marker = GMSMarker(position: position) marker.title = "Hello World" marker.map = vwGoogleMap } 希望这对某人有帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |