从iOS中的联系人详细信息获取街道,城市,州,邮编和国家/地区并填充到标签

时间:2017-10-09 19:39:44

标签: ios swift contacts-framework

我正在Xcode 8和swift 3中编写应用程序,其中我想提取街道,城市,州,国家和邮政编码的邮政地址详细信息,并将它们填充到视图控制器上的标签中。我修改了info.plist文件允许授权,我在下面编写了以下代码。我创建了一个标签来保存信息以及一个访问联系人的按钮。

我可以获取填写到标签中的联系人的全名和电子邮件地址,但我无法弄清楚如何从邮政中获取地址详细信息,例如街道地址,城市,州,邮政编码和国家/地区地址。我已经用尽了Stack Overflow和互联网上的搜索无济于事。我恭敬地请求你的帮助。

非常欢迎任何见解和建议。

# fathers'
SELECT * FROM table WHERE table MATCH 'column:"father''s"';

# example:
SELECT * FROM table WHERE table MATCH 'column:"example:"';

# month&
SELECT * FROM table WHERE table MATCH 'column:"month&"';

1 个答案:

答案 0 :(得分:1)

你必须这样使用:

if let addressString = (((contact.postalAddresses[0] as AnyObject).value(forKey: "labelValuePair") as AnyObject).value(forKey: "value")) as? CNPostalAddress {
    let mailAddress = CNPostalAddressFormatter.string(from:addressString, style: .mailingAddress)
    streetAddress = "\(addressString.street), \(addressString.city), \(addressString.state), \(addressString.postalCode), \(addressString.country)"
    streetAddress = "\(mailAddress)
}

你可以这样得到address

streetAddress = "\(addressString.street), \(addressString.city), \(addressString.state), \(addressString.postalCode), \(addressString.country)"

或者你可以这样得到mailing address

let mailAddress = CNPostalAddressFormatter.string(from:addressString, style: .mailingAddress)
streetAddress = "\(mailAddress)