我正在使用CNMutableContact来创建联系人. 我可以添加图像与contact.imageData联系,但也有一个缩略图,但它是一个只读数据… 问题是没有缩略图,在通话期间不会出现联系人图像. 我也看过imag
我可以添加图像与contact.imageData联系,但也有一个缩略图,但它是一个只读数据…
问题是没有缩略图,在通话期间不会出现联系人图像.
我也看过imageDataAvailable选项,但在创建联系人后它被设置为true.
如果有人知道如何设置缩略图:)
谢谢!
let contact = CNMutableContact() contact.givenName = "Test Name" let img = UIImage(named: "bg") let data: NSData = NSData(data:UIImagePNGRepresentation(img!)!) contact.imageData = data let storeEx = CNContactStore() let saveRequest = CNSaveRequest() saveRequest.addContact(contact, toContainerWithIdentifier:nil) try! storeEx.executeSaveRequest(saveRequest)似乎特定于iOS9.它适用于iOS10.
同时,当缩略图图像不可用时,您可以通过回退到完整图像为iOS9用户生成自己的缩略图数据.
if (contact.thumbnailImageData) { _image = [UIImage imageWithData:contact.thumbnailImageData]; } else if (contact.imageData) { // on iOS9, programmatically assigned imageData does not propogate to thumbnailImageData // Depending on your use case, you may want to resize and cache here. _image = [UIImage imageWithData:contact.imageData]; }