我正在尝试在GMSMapView
的中间添加一个十字准线。当用户平移时,十字准线不会随地图移动。它将与相机一起移动。
我查看了谷歌地图指南,但它似乎没有谈到我感兴趣的叠加层。它所说的只是添加叠加层和随地图移动的形状。
因此,我试图自己想出一些东西。我试图在故事板的地图视图顶部添加UIImageView
。 (请注意,图像视图和地图视图都在故事板中,它们都是VC控制的view
的直接子视图)
当我运行应用程序时,我没有在地图上的任何地方看到十字准线。我查看了UI层次结构并看到了这个:
小视图是带十字准线的图像视图,正如您所看到的,前面还有3个视图。我想这就是为什么十字准线没有表现出来的原因。这三个视图是从右到左:GMSVectorMapView
,GMSUISettingsPaddingView
和GMSUISettingsView
。
我不知道如何将图像视图放在前面。我试着通过调用bringSubview(toFront:)
将它带到前面。我试图在viewDidLoad
和viewDidAppear
中都这样说,但两次都没有做任何事情。
如何制作这样的叠加效果?
答案 0 :(得分:2)
您可以使用zPosition来实现此目标
YourView.layer.zPosition = 1
通过这样做,您将视图的图层放在最前面的位置,而不是视图本身。因此,观点的位置不会发生变化。
self.view.bringSubview(toFront: YourView)
也应该有效,这可能是一个时间问题。