gpt4 book ai didi

ios - 是否可以从 didTapOverlay 方法更改 GMSPolygon fillColor?

转载 作者:行者123 更新时间:2023-11-30 13:38:06 24 4
gpt4 key购买 nike

是否可以从 didTapOverlay GMSMapViewDelegate 委托(delegate)方法更改 GMSPolygon .fillColor 属性?这是委托(delegate)方法:

func mapView(mapView: GMSMapView, didTapOverlay 覆盖: GMSOverlay)

我的问题是 GMSPolygon 继承自 GMSOverlay 并且叠加层没有 fillColor 属性。我想要实现的结果是当用户点击多边形时改变多边形的颜色

谢谢

最佳答案

我以前也遇到过同样的情况(当时我用的是 Objective-C)。

我的解决方案是生成唯一的 ID(随机字符串或数字),然后将它们设置为每个 GMSPolygon 的标题属性。

下面的代码是Objective-C编写的,不过你可能会理解

- (void)mapView:(GMSMapView *)mapView didTapOverlay:(GMSOverlay *)overlay {
NSString *overlayClass = NSStringFromClass([overlay class]);
if ([overlayClass isEqualToString:@"GMSPolygon"] ||
[overlayClass isEqualToString:@"GMSPolyline"] ||
[overlayClass isEqualToString:@"GMSCircle"] ||
[overlayClass isEqualToString:@"GMSGroundOverlay"]) {
[self triggerOverlayEvent:@"overlay_click" id:overlay.title]; // <-- here
}
}

当然,您需要自己使用生成的 ID 来管理所有多边形(以及其他多边形)。

关于ios - 是否可以从 didTapOverlay 方法更改 GMSPolygon fillColor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35870777/

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