MapKit 中是否有一个专用按钮可以将相机置于用户位置的中心?或者我是否必须手动创建按钮和切换mapView.showsUserLocation = true
?
这种方式运行良好(Swift),并且可以自定义按钮:
class YourViewController{
...
@IBOutlet weak var mapView:MKMapView
...
override func viewDidLoad() {
super.viewDidLoad()
...
addMapTrackingButton()
}
func addMapTrackingButton(){
let image = UIImage(named: "trackme") as UIImage?
let button = UIButton(type: UIButtonType.System) as UIButton
button.frame = CGRectMake(5, 5, 35, 35)
button.setImage(image, forState: .Normal)
button.backgroundColor = .clearColor()
button.addTarget(self, action: #selector(YourViewController.centerMapOnUserButtonClicked), forControlEvents:.TouchUpInside)
self.mapView.addSubview(button)
}
func centerMapOnUserButtonClicked() {
self.mapView.setUserTrackingMode( MKUserTrackingMode.Follow, animated: true)
}
...
}
Swift 4:
func addMapTrackingButton(){
let image = UIImage(named: "trackme") as UIImage?
let button = UIButton(type: UIButtonType.custom) as UIButton
button.frame = CGRect(origin: CGPoint(x:5, y: 25), size: CGSize(width: 35, height: 35))
button.setImage(image, for: .normal)
button.backgroundColor = .clear
button.addTarget(self, action: #selector(ViewController.centerMapOnUserButtonClicked), for:.touchUpInside)
mapView.addSubview(button)
}
@objc func centerMapOnUserButtonClicked() {
mapView.setUserTrackingMode(MKUserTrackingMode.follow, animated: true)
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)