swift - 在 Swift 中使用文本字段设置 MKAnnotation 的标题

标签 swift uitextfield mkannotation

在 map 上的某个点注册了长按后,我希望弹出一个文本字段,这样我就可以将输入设置为在该点放置的图钉的标题。我该怎么做呢? 这是我的代码,当前注册了长按并放下了一个引脚,一切正常!我不确定如何打开文本字段并获取用户输入

func DropPin(gestureRecognizer:UIGestureRecognizer) {
     if gestureRecognizer.state == .Began {

        var point:CGPoint = gestureRecognizer.locationInView(self.Map)

        var pinLoc: CLLocationCoordinate2D = self.Map.convertPoint(point, toCoordinateFromView: self.Map)



        let x = CustomAnnotation(coordinate: pinLoc, title: "Pin", subtitle: "Pin", imageName: "TouchPin")
        self.Map.addAnnotation(x)
    }
}

最佳答案

有多种方法可以执行此操作,但您可以选择两种方法之一。

在您的 View 中,您添加一个文本字段,用户在放下图钉之前在其中设置标题。但这可能不直观或看起来很糟糕(例如,如果您需要全屏 map )。

所以,我建议是解雇 UIAlertController里面有一个文本字段。 Here is an example你如何能做到这一点。 你要么:

  1. 创建注释
  2. 将其添加到 map
  3. 出现警告
  4. 用户输入名称(将其保存在某处)
  5. 您检索最后添加的注释
  6. 您可以使用之前输入的名称设置其标题

或者:

  1. 您检测到长按
  2. 出现警告
  3. 用户输入名称(将其保存在某处)
  4. 使用之前输入的名称创建注释
  5. 将其添加到 map

这些只是 2-3 个示例。你可能会想到别的东西:)

关于swift - 在 Swift 中使用文本字段设置 MKAnnotation 的标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28720279/

相关文章:

ios - 检测对已激活的 UITextField 的点击

ios - UITextField 数字键盘不工作

iphone - MKAnnotation 的自定义标注 View ?

ios - 如何创建自定义 MKAnnotationView 和自定义注释标题和副标题

ios - 重新启动应用程序后,如何在 Collection View 中保存重新排序的单元格的位置? swift

ios - 在应用程序委托(delegate)中制作窗口 Root View Controller 时收到警告 "Presenting view controllers on detached view controllers is discouraged"?

IOS FoodTracker 教程 : Value of tuple type '()' has no member 'path'

swift - 如何让用户保持登录状态? swift

objective-c - 2 个文本字段始终等于 100% xcode

ios - MapKit注解叠加顺序