gpt4 book ai didi

ios - 更改 Google map 的选定标记或更改标记的颜色? [iOS]

转载 作者:可可西里 更新时间:2023-11-01 05:04:29 24 4
gpt4 key购买 nike

我想知道是否有办法更改所选标记的颜色或图像,然后在不再选择时将其更改回来。我看到使用 Apple Maps 的 Yelp 更改了所选标记的颜色/图像,然后在不再选择该标记后恢复为原始状态,并且想知道 Google Map iOS SDK 是否有类似的东西或者是否有人遇到过这个问题并找到了解决方案。

我尝试过的:

我查看了 Google 关于标记的文档 (found here),发现它们有 marker.opacity 改变不透明度和 marker.icon = [GMSMarker markerImageWithColor:[UIColor blackColor ]]; 改变标记的颜色。

我尝试在 -(UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker; 中手动更改它,方法是添加此行 marker.icon = [ GMSMarker markerImageWithColor: [UIColor differentColor]]; 或这一行 marker.icon = [UIImage imageNamed:@"differentColorImage"]; 但是当你点击标记/信息窗口时图像/颜色保持不变。

有人有什么想法吗?什么都有帮助。提前致谢!

最佳答案

要更改选中和未选中标记的图标,我所做的是, 首先,我将所有 GMSMarker 添加到一个数组中。之后在委托(delegate)函数 didTapMarker 中: 我得到了选定的标记并更改了该标记的图标

     - (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker
{
marker.icon=[UIImage imageNamed:@"selectedicon.png"];//selected marker

for (int i=0; i<[markerArray count]; i++)
{
GMSMarker *unselectedMarker=markerArray[i];
//check selected marker and unselected marker position
if(unselectedMarker.position.latitude!=marker.position.latitude && unselectedMarker.position.longitude!=marker.position.longitude)
{
unselectedMarker.icon=[UIImage imageNamed:@"unselectedicon.png"];
}
}


return NO;
}

这对我有用。

关于ios - 更改 Google map 的选定标记或更改标记的颜色? [iOS],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21921375/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com