Contacts(CNContact)

  1. Identification Properties
  2. Date Properties
  3. Name Properties
  4. Localization
  5. Contact Comparator
  6. Social Properties
  7. Contact phone Number
  8. Url Address
  9. Postal Addresses
  10. Email Address
  11. Note Property
  12. Image Properties
  13. Labeled Value Properties
  14. Partial Contact property availability
  15. CNContact Predicates

CNContact代表一个不可变的联系人,它是线程安全的,当我们想要修改某个联系人的数据时,可通过其子类CNMutableContact实现。

1 Identification Properties

/// 唯一标示符
public var identifier: String { get }
/// 联系方式类型
public var contactType: CNContactType { get }
/// 判断唯一标示符是否唯一
public func isUnifiedWithContactWithIdentifier(contactIdentifier: String) -> Bool

2 Date Properties

/// 公历生日
@NSCopying public var birthday: NSDateComponents? { get }
/// 阴历生日
@NSCopying public var nonGregorianBirthday: NSDateComponents? { get }
/// 多个公历日期
public var dates: [CNLabeledValue] { get }

3 Name Properties

/// 姓名前缀
public var namePrefix: String { get }
///
public var givenName: String { get }
/// 中间名
public var middleName: String { get }
///
public var familyName: String { get }
/// 姓前缀
public var previousFamilyName: String { get }
/// 名后缀
public var nameSuffix: String { get }
/// 绰号
public var nickname: String { get }

/// 语音名
public var phoneticGivenName: String { get }
/// 语音中间名
public var phoneticMiddleName: String { get }
/// 语音姓
public var phoneticFamilyName: String { get }

/// 公司
public var organizationName: String { get }
/// 部门
public var departmentName: String { get }
/// 职位
public var jobTitle: String { get }

4 Localization

/// 获取本地化显示
public class func localizedStringForKey(key: String) -> String

5 Contact Comparator

/// 根据制定类型排序
public class func comparatorForNameSortOrder(sortOrder: CNContactSortOrder) -> NSComparator

/// 获取排序关键字
public class func descriptorForAllComparatorKeys() -> CNKeyDescriptor

6 Social Properties

/// 社交关系
public var socialProfiles: [CNLabeledValue] { get }

7 Contact phone Number

/// 电话号码
public var phoneNumbers: [CNLabeledValue] { get }

8 Url Address

/// 网络地址
public var urlAddresses: [CNLabeledValue] { get }

9 Postal Addresses

/// 家庭地址
public var postalAddresses: [CNLabeledValue] { get }

10 Email Address

/// 邮箱地址
public var emailAddresses: [CNLabeledValue] { get }

11 Note Property

// 备注
public var note: String { get }

12 Image Properties

/// 头像
@NSCopying public var imageData: NSData? { get }
/// 头像缩略图
@NSCopying public var thumbnailImageData: NSData? { get }
/// 校验头像数据是否有效
@available(iOS 9.0, *)
public var imageDataAvailable: Bool { get }

13 Labeled Value Properties

/// 链接已有联系人
public var contactRelations: [CNLabeledValue] { get }
/// 即时通讯地址
public var instantMessageAddresses: [CNLabeledValue] { get }

14 Partial Contact property availability

/// 通过制定的key获取信息时,判断能否获取成功
public func isKeyAvailable(key: String) -> Bool

/// 判断CNKeyDescriptor是否有效
public func areKeysAvailable(keyDescriptors: [CNKeyDescriptor]) -> Bool

15 CNContact Predicates

/// 通过姓名匹配获取联系人
public class func predicateForContactsMatchingName(name: String) -> NSPredicate

/// 通过联系人唯一标示符,获取联系人
public class func predicateForContactsWithIdentifiers(identifiers: [String]) -> NSPredicate

/// 通过组id获取联系人
public class func predicateForContactsInGroupWithIdentifier(groupIdentifier: String) -> NSPredicate

/// 通过联系人容器标示符获取联系人
public class func predicateForContactsInContainerWithIdentifier(containerIdentifier: String) -> NSPredicate

 


Appendix

Sample Code

Swift

Contacts Framework Reference

CNContact Class Reference

Revision History

时间描述
2016-01-14博文完成

CSDN:http://blog.csdn.net/y550918116j

GitHub:https://github.com/937447974/Blog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值