Добавление и сохранение нового контакта в AddressBook
У меня есть проблема, которую я не могу решить, хотя я использовал ресурсы, которые я нашел в Google и здесь. Меня только начали учить Swift и как использовать Xcode около месяца назад, поэтому я очень новый, и проблема, которую я имею, вероятно, очень проста для других.
что я пытаюсь сделать, это добавить и сохранить новый контакт в адресную книгу. Я могу перейти из приложения в приложение "Контакты" без проблем, просто я не могу сохранить новый контакт информация.
import AddressBookUI
import AddressBook
class ViewController: UIViewController {
@IBOutlet weak var contactLink: UIButton!
@IBAction func contactLink(sender: AnyObject) {
var viewController: ABNewPersonViewController = ABNewPersonViewController()
self.presentViewController(viewController, animated: true, completion: nil)
}
}
вот код, который я использую, который относится к моей проблеме. Любая помощь будет оценена.
1 ответов
в настоящее время, вы должны использовать ContactsUI
основы. Итак, в Swift 3 Вы можете сделать:
import ContactsUI
class ViewController: UIViewController, CNContactViewControllerDelegate {
@IBAction func contactLink(_ sender: AnyObject) {
let controller = CNContactViewController(forNewContact: nil)
controller.delegate = self
let navigationController = UINavigationController(rootViewController: controller)
self.present(navigationController, animated: true)
}
func contactViewController(_ viewController: CNContactViewController, didCompleteWith contact: CNContact?) {
viewController.navigationController?.dismiss(animated: true)
}
}
мой оригинальный ответ, используя AddressBookUI
framework в Swift 2 ниже.
Swift код:
import AddressBookUI
class ViewController: UIViewController, ABNewPersonViewControllerDelegate {
@IBAction func contactLink(sender: AnyObject) {
let controller = ABNewPersonViewController()
controller.newPersonViewDelegate = self
let navigationController = UINavigationController(rootViewController: controller)
self.presentViewController(navigationController, animated: true, completion: nil)
}
func newPersonViewController(newPersonView: ABNewPersonViewController!, didCompleteWithNewPerson person: ABRecord!) {
newPersonView.navigationController?.dismissViewControllerAnimated(true, completion: nil);
}
}
посмотреть запрос пользователя на создание новой записи человека на руководство по программированию адресной книги: взаимодействие с пользователем: запрос и отображение данных.