繁体   English   中英

如何将UIButton带到Mapbox视图的前面

[英]How to bring UIButton to front of Mapbox view

我正在使用Mapbox SDK(SWIFT)并创建了自定义地图。 我在情节提要中的地图上添加了按钮和图像,但是当我运行该应用程序时,它似乎隐藏在后面。 我尝试了包括view.bringSubview(toFront:UIimage)在内的所有操作,但无法将此功能与UIButton一起使用。 我什至尝试将地图发送到backView,但是它弄乱了我的自定义地图,但仍然看不到我的图像或按钮。 请帮忙! 谢谢。

您需要将其置于视图顶部

Self.mapview.bringSubview(button)

请检查下面的图片,确保您的“视图”层次结构(按按钮紧随其后)

在此处输入图片说明

这是我的输出

在此处输入图片说明

或者如果您在视图内部有按钮,则可以将其设置为

Self.view.bringSubviewToFront(button)button.superview?.bringSubviewToFront(button)

确保您的按钮未在情节提要中隐藏,并且当您的应用程序运行时,请捕获用户界面并检查情节提要的图层。

您还可以使用以下方法控制子视图的可见性:

mapview.layer.zPosition = 1
button.layer.zPosition = 2
image.layer.zPosition = 2

您可以单击debug导航器-> View UI层次结构以直观地了解如何分层查看。

调试导航器

我无法更改地图视图的视图层次结构,因此我采用了另一种方法。

我用let mapView = MGLMapView(...)在viewDidLoad函数中创建了mapview,然后使用代码view.addSubview(mapView)使我的mapview可见。 我必须同样使按钮可见。

首先,我将IBOutlet插入到ViewController类中

@IBOutlet weak var MyButton: UIButton!

其中引用了我放置在情节提要中的mapView上方的按钮。 然后,我通过添加将按钮添加到视图中

view.addSubview(MyButton)

在添加我的mapView之后。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM