2016-10-06 5 views
8

현재 첫 번째 iOS 앱을 개발 중이며 코드에 대해 다소 천천히 무례하고 (java와는 별개이므로) 유일한 문제는 새 업데이트로, Xcode가 제 코드를 제정신이 아니게 만듭니다. 나는 대부분의 이슈를 해결했다고 생각하지만 ...XCode8 Swift3 - 열린 연락처 목록의 문제 및 클릭으로 데이터 검색

화면 중 하나에서 앱이 주소록을 열어 사용자가 하나를 클릭하도록하기 전에; 클릭이 완료되면 연락처 목록이 닫히고 해당 연락처의 데이터가 컨트롤러로 검색됩니다. 이제 사용자가 연락처를 클릭하면 더 많은 정보가 표시되지만 콘솔 로그에서 정보가 나옵니다.

내가 인터넷에서 찾은 모든 것을 시도하고 왜 작동하지 않는지 잘 모르겠습니다.

이전에는 Addressbook (또는 이와 비슷한 내용)을 사용했지만 이미 CNContact으로 시도했습니다.

@IBAction func addNewContactOnClick(_ sender: AnyObject) { 

     let peoplePicker = CNContactPickerViewController() 

     peoplePicker.delegate = self 

     self.present(peoplePicker, animated: true, completion: nil) 
    } 

CNContactPickerDelegate 방법

CNContactPickerDelegate
func contactPicker(picker: CNContactPickerViewController, didSelectContacts contacts: [CNContact]){ 
     contacts.forEach { contact in 
      for number in contact.phoneNumbers { 
       let phoneNumber = number.value as! CNPhoneNumber 
       print("number is = \(phoneNumber)") 
      } 
     } 
    } 

func contactPickerDidCancel(picker: CNContactPickerViewController) { 
    print("Cancel Contact Picker") 
} 

답변

8

방법은 아래와 같이 3 신속한 변경 버튼 코드를이다. CNContactPickerDelegate 체크 Apple Documentation의 다른 방법에 대한

func contactPicker(_ picker: CNContactPickerViewController, didSelect contacts: [CNContact]) { 
    //your code 
} 

func contactPickerDidCancel(_ picker: CNContactPickerViewController) { 
    //your code 
} 

.

+0

감사합니다. 이제는 원하는 데이터 만 검색하면됩니다. – Izahal

+0

환영 메이트 :) –

관련 문제