这是我要实现的目标的图像:
基本上,一个“变暗”的 map 。
问题:用户需要平移 map 的能力,因此仅在 map 上添加半透明 View 是行不通的。 (在 mapView 上添加 View 意味着它将无法检测手势。)
我尝试过的事情:
- 设置 mapView
backgroundColor
- 使用
mapView.insertSubview
添加半透明 View - 设置 mapView alpha(影响所有 child ,即注释 View )
MKOverlay
(我只找到了通过坐标设置 View /多边形的方法)
最佳答案
是否可以将一个 View 子类化为半透明 subview ,并给它一个名为“map”的新变量。此 map
变量将是对实际 map 的引用。为 subview 添加手势识别器,当某种手势发生时,将手势传递给 map 。
或将手势识别器添加到 subview ,并在手势识别器中说 map.runFunctionForThatGesture
我自己没做过,不过我觉得应该可以
关于iOS Swift MKMapView 设置覆盖在 map 前面,注释 View 后面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32162459/