我正在尝试提示用户创建新联系人并传入信息。 (特别是电话和电子邮件)
我发现了许多使用CNMutableContact并向其添加电子邮件的示例。但是,任何涉及CNContact的代码都会给我一个“使用未声明的类型”错误。
如何设置我的课程以提示用户保存联系人?
答案 0 :(得分:14)
import ContactsUI
//add CNContactViewControllerDelegate to your ViewController
class ViewController: UIViewController , CNContactViewControllerDelegate {
func addPhoneNumber(phNo : String) {
if #available(iOS 9.0, *) {
let store = CNContactStore()
let contact = CNMutableContact()
let homePhone = CNLabeledValue(label: CNLabelHome, value: CNPhoneNumber(stringValue :phNo ))
contact.phoneNumbers = [homePhone]
let controller = CNContactViewController(forUnknownContact : contact)
controller.contactStore = store
controller.delegate = self
self.navigationController?.setNavigationBarHidden(false, animated: true)
self.navigationController!.pushViewController(controller, animated: true)
}
}
答案 1 :(得分:3)
你可以做这样的事。
extension ViewController: CNContactViewControllerDelegate {
func showNewContactViewController() {
let contactViewController: CNContactViewController = CNContactViewController(forNewContact: nil)
contactViewController.contactStore = CNContactStore()
contactViewController.delegate = self
let navigationController: UINavigationController = UINavigationController(rootViewController: contactViewController)
present(navigationController, animated: false) {
print("Present")
}
}
}
答案 2 :(得分:1)
快捷键4
vh
实现委托import ContactsUI
CNContactViewControllerDelegate