- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我是 swift 语言的新手,还没有使用 mapkit 完成应用程序。但是我已经设置了 map 和区域,但我对如何允许用户添加图钉挂断了电话。让我澄清一下,我什至不知道从哪里开始,我现在(对于别针)只有我的变量,但我什至不确定这是否正确。任何帮助将非常感激!!我有什么...
var MyPins: MKPinAnnotatoinView!
……
override func viewDidLoad() {
super.viewDidLoad()
map View 代码
..........
最佳答案
您的 pin 变量是正确的。现在您只需要将此注释添加到 MKMapView
。
您还可以为 MKAnnotation
创建自定义类,以将自定义注释添加到 map View 。
的测试版演示 MapExampleiOS8 => 支持Swift 2.1
按照以下步骤操作:
<强>1。将 MapKit.framework
添加到项目中。
<强>2。创建 map View 控件的 Storyboard 变量 IBOutlet
或在 View Controller 中创建它。为此变量设置委托(delegate)以覆盖它的委托(delegate)方法:
将委托(delegate)签名添加到 View Controller 界面:
class ViewController: UIViewController, MKMapViewDelegate {
override func viewDidLoad() {
super.viewDidLoad()
// Set map view delegate with controller
self.mapView.delegate = self
}
}
<强>3。覆盖其委托(delegate)方法:
这里我们需要重写mapView(_:viewForAnnotation:)
方法来在 map 上显示注释图钉。
func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? {
if (annotation is MKUserLocation) {
return nil
}
if (annotation.isKind(of: CustomAnnotation.self)) {
let customAnnotation = annotation as? CustomAnnotation
mapView.translatesAutoresizingMaskIntoConstraints = false
var annotationView = mapView.dequeueReusableAnnotationView(withIdentifier: "CustomAnnotation") as MKAnnotationView!
if (annotationView == nil) {
annotationView = customAnnotation?.annotationView()
} else {
annotationView?.annotation = annotation;
}
self.addBounceAnimationToView(annotationView)
return annotationView
} else {
return nil
}
}
<强>4。添加 MKPointAnnotation
到 map View 。
您可以在 map View 中将大头针添加到位置。为简单起见,将代码添加到 viewDidLoad()
方法。
override func viewDidLoad() {
super.viewDidLoad()
// Set map view delegate with controller
self.mapView.delegate = self
let newYorkLocation = CLLocationCoordinate2DMake(40.730872, -74.003066)
// Drop a pin
let dropPin = MKPointAnnotation()
dropPin.coordinate = newYorkLocation
dropPin.title = "New York City"
mapView.addAnnotation(dropPin)
}
关于ios - 如何使用 Xcode 6 (Swift) 添加引脚(注释),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27349612/
我是一名优秀的程序员,十分优秀!