gpt4 book ai didi

ios - iOS 上的 MapboxGL native : Get MGLPointFeature on tap

转载 作者:行者123 更新时间:2023-11-29 05:31:43 25 4
gpt4 key购买 nike

我有自己的 MGLPointFeature 自定义子类。我为我的实例创建一个源,如下所示:

let myAnnotations: [MySubclassType] = /* code that generates those annotations */
let source = MGLShapeSource(identifier: "some_identifier",
features: myAnnotations,
options: [.clustered: true, .clusterRadius: 40])

我还添加了一个 MGLSymbolStyleLayer,它现在显示这些注释。

一切都按预期进行。我的 MGLMapView 正确显示我的注释。好的!检查!

所以现在我很想知道用户何时点击它们。 (请注意,我对注释进行了聚类,因此将它们单独添加到 mapView 中不起作用。)

好的...所以现在我像这样检测水龙头:

let rect = CGRect(x: tapPoint.x, y: tapPoint.x, width: 0, height: 0).insetBy(dx: -10, dy: -10)
// I inset it so that the user does not have to be thaaaat super accurate
let features = mapView.visibleFeatures(in: rect)

所以现在我可以在我的手指下获得这些功能。也还好啊!但是......我希望该功能是 MySubclassType 类型,因为我将该功能添加到了 map 中。但它的类型是 MGLPointFeature。所以我猜 Mapbox 会以某种方式将我的自定义 PointFeature 复制到常规 PointFeature 中?

所以...我的问题是...如何获取我创建的点特征的实例(我在其中附加了我想知道的其他信息)。我知道我可以简单地将它们添加到 attributes 字段,但随后我需要再次查询我的数据......有没有更简单的方法?

此外...如果我对点进行更多样式设置,为其设置 2-3 层(背景和图标),我会得到 MGLPointFeature 的多个实例...这是为了就这样吗?

最佳答案

也许它就像一个 uitableviewcell,您可以将其转换到您自己的自定义单元格以访问您的属性?

关于ios - iOS 上的 MapboxGL native : Get MGLPointFeature on tap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57473987/

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