我正在尝试在GMSMapView
的中间添加十字准线。用户平移时,十字准线将不会随 map 一起移动。它将随相机一起移动。
我看了看Google map 指南,但似乎并没有谈论我感兴趣的叠加层类型。它说的只是添加随 map 移动的叠加层和形状。
因此,我尝试自己提出一些建议。我试图在情节提要的 map 视图顶部添加UIImageView
。 (请注意,图像视图和 map 视图都在情节提要中,并且它们都是VC控制的view
的直接子视图)
运行该应用程序时,我在 map 上的任何地方都没有看到十字准线。我查看了UI层次结构,并看到了以下内容:
小视图是带有十字准线的图像视图,您可以看到它前面还有3个视图。我认为这就是为什么十字准线没有显示出来的原因。从右到左,这三个视图分别是GMSVectorMapView
,GMSUISettingsPaddingView
和GMSUISettingsView
。
我不知道如何将图像视图置于最前面。我试图通过调用bringSubview(toFront:)
将它放在前面。我试图用viewDidLoad
和viewDidAppear
来称呼它,但是两次都没有执行。
如何使这样的覆盖层起作用?
最佳答案
您可以使用zPosition来实现
YourView.layer.zPosition = 1
通过这样做,您将视图的图层置于最前面的位置,而不是视图本身。因此,视图的位置不会改变。
self.view.bringSubview(toFront: YourView)
应该也可以,这可能是一个定时问题。
关于ios - 如何将不会随 map 移动的叠加层添加到GMSMapView?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45135468/