目前我正在制作类似于超级的应用程序,我希望在用户地图上显示驱动程序移动位置。我已经根据这些坐标获得了如何在地图上移动标记的驱动程序坐标。
Ex:目前我正在制作两个应用程序,一个是用户端,另一个是驱动程序端。 如果用户想要从一个地方旅行到另一个地方。那时用户应该请求特定的驱动程序。
如果司机接受该请求意味着在用户方面,我将获得驾驶员当前位置纬度&经度,但问题是我需要在GoogleMaps上显示带有移动动画的Driver Car(自定义图像)图像
如果有人知道。请帮我解决一下这个问题?
答案 0 :(得分:0)
- 在标记上显示自定义图像:
醇>
marker = [[GMSMarker alloc] init];
marker.position = CLLocationCoordinate2DMake(lat,
lng);
[marker setIcon:[UIImage imageNamed:kMarkerImage]];
marker.map = self.mapView_;
- 制作动画动画
醇>
如果您获得驾驶员协调员,则必须HTTP
继续(1-2 sec delay in each call)
请求。
如果您正在使用用户坐标,那么您也必须执行相同的步骤。
然后您必须先Clear
地图,否则您会在其上添加multiple
标记。然后使用NewCordinates添加新标记。
[self.mapView_ clear];
答案 1 :(得分:0)
采用CLLocationCoordinate2D类型的两个变量:
Last_Location = last locaiton of your marker
Current_Location = current location of marker
最初Last_Location和Current_Location在获得第一次位置更新后将是相同的,写下面的代码:
let p1: MKMapPoint = MKMapPointForCoordinate(Last_Location)
let p2: MKMapPoint = MKMapPointForCoordinate(Current_Location)
let dist: CLLocationDistance = MKMetersBetweenMapPoints(p1, p2)
CATransaction.begin()
CATransaction.setAnimationDuration(6.0)
your_marker.position = Last_Location
your_marker.position = Current_Location
CATransaction.commit()
Last_Location = Current_Location
获取新位置更新后调用上面的代码行。希望这会有所帮助: - )