微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SWIFT iOS9为联系人创建thumbnailImageData

我正在使用CNMutableContact来创建联系人.
我可以添加图像与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];
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐