iOS9通訊錄框架Contacts的簡單使用

2021-07-12 03:20:41 字數 2606 閱讀 7487

第一步,匯入contacts框架,import

contacts ,這個是不帶ui的框架,可以直接獲取聯絡人

// 檢查狀態

let status: cnauthorizationstatus = cncontactstore.authorizationstatusforentitytype(cnentitytype.contacts)

switch status

第二步,如果沒有獲取授權就去獲取

private func getauth() 

// 根據status的狀態來判斷是否授權成功

print("status = \(status)")}}

第三步、獲取通訊錄資訊

// 獲取通訊錄資訊

private func getcontactmessage()

} catch let error

}

第四步、列印獲取的資訊

private func contactmessage() }}

下面介紹包含ui介面的通訊錄框架contactsui,使用之前要匯入import

contactsui

let contact = cncontactpickerviewcontroller()

contact.delegate = self

// 設定要搜尋的資訊,可以不設定這個屬性

contact.displayedpropertykeys = [cncontactgivennamekey, cncontactfamilynamekey, cncontactemailaddresseskey, cncontactbirthdaykey, cncontactimagedatakey, cncontactphonenumberskey]

// 設定某個搜尋的條件,不符合條件的項不可選(搜尋號碼大於2條的)

// 設定要搜尋的資訊,可以不設定這個屬性

contact.displayedpropertykeys = [cncontactgivennamekey, cncontactfamilynamekey, cncontactemailaddresseskey, cncontactbirthdaykey, cncontactimagedatakey, cncontactphonenumberskey]

// 搜尋某個屬性的條件

下面介紹cncontactpickerdelegate的**方法

extension viewcontroller: cncontactpickerdelegate 

func contactpicker(picker: cncontactpickerviewcontroller, didselectcontact contact: cncontact)

func contactpicker(picker: cncontactpickerviewcontroller, didselectcontactproperty contactproperty: cncontactproperty)

func contactpicker(picker: cncontactpickerviewcontroller, didselectcontacts contacts: [cncontact])

func contactpicker(picker: cncontactpickerviewcontroller, didselectcontactproperties contactproperties: [cncontactproperty])

}

7 5 通訊錄排序

輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式...

習題9 5 通訊錄排序

習題9 5 通訊錄排序 20分 輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字...

習題9 5 通訊錄排序

輸入n個朋友的資訊,包括姓名 生日 號碼,本題要求編寫程式,按照年齡從大到小的順序依次輸出通訊錄。題目保證所有人的生日均不相同。輸入第一行給出正整數n 10 隨後n行,每行按照 姓名 生日 號碼 的格式給出一位朋友的資訊,其中 姓名 是長度不超過10的英文本母組成的字串,生日 是yyyymmdd格式...