如何在iOS的mapView上添加固定条

时间:2018-09-09 16:53:25

标签: ios

最近,我做了一个简单的项目,需要使用GoogleMap Api。

我认为我的问题是如此简单和容易, 但我不知道如何完成它。

这是我的问题

  1. 我想在View上添加一个简单的栏。(上1,下1)
  2. 这两个小节是固定的。栏上还有一个我可以按下的按钮(例如后退按钮)
  3. 除2个条形位置外,如果我在mapView上拖动/滑动而不是更改并显示位置信息。

请检查以下图像。(这就是我要制作的。)

enter image description here

如何将条形图放置在视图上,并在模拟器中看到这些条形图?请让我知道

(我不上传代码,因为这不是代码的问题,只想了解如何插入这样的视图(或图层?)的概念)

1 个答案:

答案 0 :(得分:1)

首先,假设您拥有地图视图:

let camera = GMSCameraPosition.camera(withLatitude: 11.5449, longitude: 104.8922, zoom: 12)
let map = GMSMapView.map(withFrame: .zero, camera: camera)
map.isMyLocationEnabled = true
self.view = map

然后,您可以正常添加顶视图和底视图

let topBar = UIView()
view.addSubview(topBar)
let bottomBar = UIView()
view.addSubview(bottomBar)

如果要添加其他视图,例如文本和按钮,则可以将它们作为子视图添加到topBar或bottomBar视图

let button = UIButton()
topBar.addSubview(button)

注意:要将视图放置在图像中的确切位置,您需要指定其位置。 例如:

bottomBar.frame = CGRect(x: 0, y: view.bounds.height - 200, width: view.bounds.width, height: 200)

在故事板上: 我没有使用Google地图,因此这里以默认的MKMapView为例。

首先,假设我们有一个覆盖整个视图控制器的地图视图:

enter image description here

然后在顶部栏,添加一个视图并赋予它一些约束:

enter image description here

现在返回按钮和标题:

enter image description here

enter image description here

enter image description here

现在,对于底部的栏:首先,我们需要一个视图来容纳所有东西:

enter image description here

对于文本,我们使用4个uilabel,将它们嵌入堆栈中以使其对齐。并给它们一些间距以使其看起来不错:

enter image description here

最后,对于右边的图像,我们可以使用uiimageview或uibutton:

enter image description here

不要忘记在stackview和uiimageview / uibutton中添加约束