Can any one please guide me ? Is it possible to open contact screen programmatically in iOS (swift)
Try this below code. I think I am getting what you are looking for.
let con = CNContact()
let vc = CNContactViewController(forNewContact: con)
_ = self.navigationController?.pushViewController(vc, animated: true)
Its possible to open this screen directly with some pre populated fields. No need of any workarounds.
let contact = CNMutableContact()
let homePhone = CNLabeledValue(label: CNLabelHome, value: CNPhoneNumber(stringValue :"number goes here"))
contact.phoneNumbers = [homePhone]
contact.imageData = data // Set image data here
let vc = CNContactViewController(forNewContact: contact)
vc.delegate = self
let nav = UINavigationController(rootViewController: vc)
self.present(nav, animated: true, completion: nil)
Till iOS 10.3.1 there is no public api to open contacts screen directly to add new contact. You can use ContactsUI framework to open contacts within your application and then from that contact screen add new Contact.
For reference :-
https://developer.apple.com/reference/contactsui
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With