Xcode Swift - 在苹果地图上查看输入的邮政编码
Posted
技术标签:
【中文标题】Xcode Swift - 在苹果地图上查看输入的邮政编码【英文标题】:Xcode Swift - View entered Postcode on Apples map 【发布时间】:2016-08-15 10:51:00 【问题描述】:我正在寻求帮助!
我有一个名为“textFieldPostcode”的文本字段和一个名为“btnViewOnMap”的UIButton
我的想法是,当用户在textFieldPostcode
中输入他们的邮政编码并按下BtnViewOnMap
按钮时,它会将用户带到 Apples Built in 地图并显示输入的邮政编码。
我看过一些关于如何使用代码打开 Apple 内置地图的教程,这些教程很有效
代码:
@IBOutlet weak var textFieldPostcode: UITextField?
@IBOutlet weak var btnViewOnMap: UIButton?
ViewDidLoad()
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(viewOnMapPress))
btnViewOnMap?.addGestureRecognizer(tapGesture)
viewOnMapPress 的功能:
func viewOnMapPress(sender: UITapGestureRecognizer)
if (buttonError != nil)
SVProgressHUD.showErrorWithStatus(buttonError?.localizedDescription)
else
UIApplication.sharedApplication().openURL(NSURL(string: "http://maps.apple.com/?")!)
下面的行打开了地图,并显示了一个位置,但是我怎样才能改变它以便它搜索用户输入呢?
UIApplication.sharedApplication().openURL(NSURL(string: "http://maps.apple.com/?")!)
提前致谢!
【问题讨论】:
【参考方案1】:试试这个(将邮政编码作为查询参数发送到地图):
let stringURLSearchPostCode = "http://maps.apple.com/?q=" + self.textFieldPostcode.text
UIApplication.sharedApplication().openURL(NSURL(string: stringURLSearchPostCode)!)
【讨论】:
【参考方案2】:请参阅本文档,其中包含在地图应用中搜索位置的 Apple 地图查询示例。
https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html
但这里的问题是 Apple Maps 很可能不按邮政编码搜索。 所以首先需要通过第三方API获取位置坐标或输入的邮政编码地址。
你可以在这里找到例子
iOS Find Location (Latitude,longitude) from Zipcode
【讨论】:
以上是关于Xcode Swift - 在苹果地图上查看输入的邮政编码的主要内容,如果未能解决你的问题,请参考以下文章
无法在 swift xcode 7.1 中的地图上获取用户位置
如何在 Swift 5 中以编程方式在特定屏幕(即主显示器而不是外部显示器)上显示窗口? [苹果系统; Xcode 15]
如何在 Swift 中使用 Apple 地图 - 你必须使用 C 还是 Swift 可以?