2016-11-25 12 views
0

Swift 3では特定の連絡先の記念日フィールドを一括削除できますか?iOS Swift 3 - 連絡先情報フィールドを削除します。記念日

連絡先に記念日情報を追加するコードが見つかりましたが、特定の連絡先から既存の記念日情報を削除するコードを探しています。

追加するサンプル:

//add anniversary 
let anniversaryDate = NSDateComponents() 
anniversaryDate.month = 6 
anniversaryDate.day = 13 
let anniversary = CNLabeledValue(label: "Anniversary", 
    value: anniversaryDate) 
fooBar.dates = [anniversary] 

//save 
let request = CNSaveRequest() 
request.addContact(fooBar, toContainerWithIdentifier: nil) 
do{ 
    try storeo.executeSaveRequest(request) 
    print("Successfully stored the contact") 
} catch let err{ 
    print("Failed to save the contact. \(err)") 
} 

答えて

0

あなたは日付をフィルタリングして、連絡先を更新することができます。

let mutableContact = contact.mutableCopy() as! CNMutableContact 

let dates = mutableContact.dates.filter({ $0.label != "Anniversary" }) 

mutableContact.dates = dates 

let request = CNSaveRequest() 
request.updateContact(mutableContact) 

do { 

    try contactStore.executeSaveRequest(request) 

} catch let error { 

    print("Failed to updated contact. \(error)") 
} 
関連する問題