Với ABAddressBook, khi tôi muốn người dùng có thể có tùy chọn "Tạo liên hệ mới" và "Thêm vào liên hệ hiện tại" cho một liên hệ họ chưa từng thấy trước đây, tôi sẽ tạo ra và trình bày một số ABUnknownPersonViewController
."Tạo liên hệ mới" và "Thêm vào liên hệ hiện tại" cho CNContactViewController()
Tôi không thể tìm cách sao chép chức năng này trong khung công tác CNContacts. Dường như với tôi rằng CNContactViewController(forUnknownContact: contact)
có thể hoạt động nhưng rất tiếc, điều này chỉ cho phép người dùng "Gửi tin nhắn" hoặc "Chia sẻ liên hệ".
Làm cách nào để cho phép người dùng lưu liên hệ vào sổ địa chỉ của họ, dưới dạng liên hệ mới hoặc như một phần của địa chỉ liên hệ hiện có, trong CNContacts?
func presentContact() {
let status = CNContactStore.authorizationStatusForEntityType(.Contacts)
switch status {
case .Authorized:()
case .NotDetermined: requestAccess()
case .Denied, .Restricted: accessDenied()
}
print("authorized? \(status == .Authorized)") //prints "authorized? true"
let unknown = CNContactViewController(forUnknownContact: contact!)
unknown.delegate = self
self.navigationController?.pushViewController(unknown, animated: false)
}
Ngay cả khi tôi cố gắng để yêu cầu truy cập, người dùng vẫn có thể không lưu số liên lạc.
Ai đó có thể giải thích cuộc bỏ phiếu của họ xuống? – 5813
Vì bạn không hiển thị mã thực. Hiển thị mã của bạn! Bạn vẫn đang bỏ qua tất cả các loại phần quan trọng, và tôi không thể biết đó là bởi vì bạn không biết rằng bạn nên làm chúng hay vì bạn chỉ lười biếng trong việc dán mã của bạn vào Stack Overflow. 'Liên hệ' là gì? Hiển thị dòng nơi bạn đặt 'contactStore' của' unknown'. Những điều đó đều quan trọng. _CHỈ. CỦA BẠN. THỰC. CODE._ – matt
Phần quan trọng nào tôi vẫn bỏ ra? 'contact' là một' CNContact' tùy ý với bất kỳ số thuộc tính nào được đặt. Tôi không chắc làm thế nào mà có thể có hiệu lực trên các nút hành động không được hiển thị. Mọi thứ đều ở đây ngoại trừ thuộc tính 'contactStore' của' unknown' đang được thiết lập, điều này hóa ra là vấn đề. Cảm ơn bạn đã giúp đỡ. Tôi xin lỗi nếu tôi cắt một số góc trong việc đưa ra một ví dụ tái sản xuất tối thiểu; Tôi đã cố gắng làm cho nó đơn giản và dễ dàng nhất có thể để làm theo. – 5813