指南针在 MKMapView 中的放置或位置?
Compass placing or position in a MKMapView?
我正在编写一个基于位置的应用程序 Swift。
我让我的 MapView 可以显示指南针,但我想将指南针位置从右上角更改为左下角。
有高手知道怎么搬吗?
先谢谢你。
你可以尝试改变这个:
mapView.layoutMargins
或者子类化 MKMapView 组件:
import MapKit
class MyMapView: MKMapView {
override func layoutSubviews() {
super.layoutSubviews()
if let compassView = self.subviews.filter({ [=11=].isKindOfClass(NSClassFromString("MKCompassView")!) }).first {
compassView.frame = CGRectMake(15, 30, 36, 36)
}
}
}
您可以通过将罗盘可见性设置为 false 然后添加一个新的罗盘来实现此目的
mapView.showsCompass = false
let compassBtn = MKCompassButton(mapView:mapView)
compassBtn.frame.origin = CGPoint(x: self.view.frame.maxX - 40, y: 20)
compassBtn.compassVisibility = .adaptive
view.addSubview(compassBtn)
您可以使用自适应可见性,这样您的新指南针就会像原来的一样。
我正在编写一个基于位置的应用程序 Swift。
我让我的 MapView 可以显示指南针,但我想将指南针位置从右上角更改为左下角。
有高手知道怎么搬吗?
先谢谢你。
你可以尝试改变这个:
mapView.layoutMargins
或者子类化 MKMapView 组件:
import MapKit
class MyMapView: MKMapView {
override func layoutSubviews() {
super.layoutSubviews()
if let compassView = self.subviews.filter({ [=11=].isKindOfClass(NSClassFromString("MKCompassView")!) }).first {
compassView.frame = CGRectMake(15, 30, 36, 36)
}
}
}
您可以通过将罗盘可见性设置为 false 然后添加一个新的罗盘来实现此目的
mapView.showsCompass = false
let compassBtn = MKCompassButton(mapView:mapView)
compassBtn.frame.origin = CGPoint(x: self.view.frame.maxX - 40, y: 20)
compassBtn.compassVisibility = .adaptive
view.addSubview(compassBtn)
您可以使用自适应可见性,这样您的新指南针就会像原来的一样。