2014-10-29 4 views
6

मुझे एक समस्या है कि मैं हल करने के लिए काफी प्रतीत नहीं कर सकता हूं, भले ही मैंने Google पर और यहां पर संसाधनों का उपयोग किया हो। मैंने केवल स्विफ्ट और एक महीने पहले एक्सकोड का उपयोग करने के बारे में सिखाया है, इसलिए, मैं बहुत नया हूं, और मेरी समस्या शायद दूसरों के लिए बहुत आसान है।पता पुस्तिका में नया संपर्क जोड़ना और सहेजना

जो मैं करने की कोशिश कर रहा हूं वह एड्रेसबुक में एक नया संपर्क जोड़ और सहेज रहा है। मैं ऐप से संपर्क ऐप में कोई समस्या नहीं ले सकता, यह सिर्फ नई संपर्क जानकारी को सहेज नहीं सकता है।

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) 
    } 
} 

यहां मैं जिस कोड का उपयोग कर रहा हूं वह मेरी समस्या से संबंधित है। किसी भी सहायता की सराहना की जाएगी।

उत्तर

5

आजकल, आप ContactsUI ढांचे का उपयोग करेंगे। तो, स्विफ्ट 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 ढांचे का उपयोग कर स्विफ्ट 2 में नीचे है।


स्विफ्ट कोड है:

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); 
    } 
} 

उपयोगकर्ता को संकेत Address Book Programming Guide: User Interaction: Prompting for and Displaying Data का एक नया व्यक्ति रिकार्ड खंड बनाने के लिए देखें।

संबंधित मुद्दे