作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Swift 中,当您通过将 CNSaveRequest
传递给 CNContactStore
来更新“联系人”时,更新会立即更改您 native 联系人应用中的联系人。
但是,当您通过将CNSaveRequest
传递给CNContactStore
来添加或删除“组”(CNGroup
)时,添加或删除不会立即更改 native 联系人应用程序中的群组。
如果添加或删除“群组”,您必须终止并重新启动您的应用或 native 通讯录应用。
有什么方法可以立即更改 native 联系人应用程序中的群组?
例如,在代码 A 的情况下,您可以立即看到 native 联系人应用程序的变化。对于代码 B,您无法立即看到更改,您必须重新启动您的应用或 native 联系人应用。
我不用ABAddressbook
,自然要说iOS9了。
[代码A]
let req = CNSaveRequest()
req.updateContact(fooContact)
do {
try contactStore.executeSaveRequest(req)
} catch {
print("\(error)")
}
[代码B]
let req = CNSaveRequest()
req.addGroup(mutableGroup)
do {
try contactStore.executeSaveRequest(req)
} catch {
print("\(error)")
}
最佳答案
抱歉,这个问题是我自己解决的...我添加了刷新显示 CNGroup
数组的 UITableView
的 dataSource
的代码。例如,...
var groups: [CNGroup] = [] // dataSource of myTableView
......
// Custome function to be called when you want to refresh myTableView
function refreshMyTableView() {
do {
// I forget adding the line below to refresh tableview datasource
try self.groups = contactStore.groupsMatchingPredicate(nil)
myTableView.reloadData()
} catch {
}
}
关于ios - CNSaveRequest.addGroup 和 deleteGroup 不会立即更改联系人中的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33514970/
在 Swift 中,当您通过将 CNSaveRequest 传递给 CNContactStore 来更新“联系人”时,更新会立即更改您 native 联系人应用中的联系人。 但是,当您通过将CNSav
我是一名优秀的程序员,十分优秀!