为什么怎么删除iphone通讯录录的联系人册了又走出来

iPhone的通讯录联系人删了又出来,因为存过的电话号有些人都不用了,我删掉之后没过多久又出来,删_百度知道
iPhone的通讯录联系人删了又出来,因为存过的电话号有些人都不用了,我删掉之后没过多久又出来,删
我删掉之后没过多久又出来,删了好几次,烦iPhone的通讯录联系人删了又出来,因为存过的电话号有些人都不用了
提问者采纳
iCloud同步,你得在iCloud帐号删掉才行,或者关闭同步
iCloud在手机上还是用电脑?
电脑怎么登陆那个ID?
和你手机id是一样的,你查看手机就知道帐号了
提问者评价
太给力了,你的回答完美的解决了我的问题!
采纳率100%
其他类似问题
上传到云端你正确的电话本,它不会反复变化的,用qq号登录,哪怕只有一个号码载个qq通信录
iphone的相关知识
按默认排序
其他2条回答
苹果有个回收站 把回收站里的删除 试试看
回收站?在哪里?
连接电脑用手机管家删
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁6845人阅读
1.需要引入AddressBook.framework框架
2.iPhone通讯录的增加联系人的操作,代码如下(放到项目中可直接运行):
// 初始化一个ABAddressBookRef对象,使用完之后需要进行释放,
// 这里使用CFRelease进行释放
// 相当于通讯录的一个引用
ABAddressBookRef addressBook = ABAddressBookCreate();
// 新建一个联系人
// ABRecordRef是一个属性的集合,相当于通讯录中联系人的对象
// 联系人对象的属性分为两种:
// 只拥有唯一值的属性和多值的属性。
// 唯一值的属性包括:姓氏、名字、生日等。
// 多值的属性包括:电话号码、邮箱等。
ABRecordRef person = ABPersonCreate();
NSString *firstName = @&四&;
NSString *lastName = @&李&;
NSDate *birthday = [NSDate date];
// 电话号码数组
NSArray *phones = [NSArray arrayWithObjects:@&123&,@&456&, nil];
// 电话号码对应的名称
NSArray *labels = [NSArray arrayWithObjects:@&iphone&,@&home&, nil];
// 保存到联系人对象中,每个属性都对应一个宏,例如:kABPersonFirstNameProperty
// 设置firstName属性
ABRecordSetValue(person, kABPersonFirstNameProperty, (CFStringRef)firstName, NULL);
// 设置lastName属性
ABRecordSetValue(person, kABPersonLastNameProperty, (CFStringRef) lastName, NULL);
// 设置birthday属性
ABRecordSetValue(person, kABPersonBirthdayProperty, (CFDateRef)birthday, NULL);
// ABMultiValueRef类似是Objective-C中的NSMutableDictionary
ABMultiValueRef mv = ABMultiValueCreateMutable(kABMultiStringPropertyType);
// 添加电话号码与其对应的名称内容
for (int i = 0; i & [phones count]; i ++) {
ABMultiValueIdentifier mi = ABMultiValueAddValueAndLabel(mv, (CFStringRef)[phones objectAtIndex:i], (CFStringRef)[labels objectAtIndex:i], &mi);
// 设置phone属性
ABRecordSetValue(person, kABPersonPhoneProperty, mv, NULL);
// 释放该数组
CFRelease(mv);
// 将新建的联系人添加到通讯录中
ABAddressBookAddRecord(addressBook, person, NULL);
// 保存通讯录数据
ABAddressBookSave(addressBook, NULL);
// 释放通讯录对象的引用
if (addressBook) {
CFRelease(addressBook);
------------------------------------------------------------------------------------------------
3.删除联系人的操作,代码如下(放到项目中可直接运行):
// 初始化并创建通讯录对象,记得释放内存
ABAddressBookRef addressBook = ABAddressBookCreate();
// 获取通讯录中所有的联系人
NSArray *array = (NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook);
// 遍历所有的联系人并删除(这里只删除姓名为张三的)
for (id obj in array) {
ABRecordRef people = (ABRecordRef)
NSString *firstName = (NSString *)ABRecordCopyValue(people, kABPersonFirstNameProperty);
NSString *lastName = (NSString *)ABRecordCopyValue(people, kABPersonLastNameProperty);
if ([firstName isEqualToString:@&三&] && [lastName isEqualToString:@&张&]) {
ABAddressBookRemoveRecord(addressBook, people, NULL);
// 保存修改的通讯录对象
ABAddressBookSave(addressBook, NULL);
// 释放通讯录对象的内存
if (addressBook) {
CFRelease(addressBook);
-------------------------------------------------------------------------------------------------
4.修改联系人的操作,代码如下(由于项目中使用到了修改联系人的操作,所以将方法直接复制过来了):
// 根据姓氏、名字以及手机号码修改联系人的昵称和生日
+ (void) updateAddressBookPersonWithFirstName:(NSString *)firstName
lastName:(NSString *)lastName
mobile:(NSString *)mobile
nickname:(NSString *)nickname
birthday:(NSDate *)birthday {
// 初始化并创建通讯录对象,记得释放内存
ABAddressBookRef addressBook = ABAddressBookCreate();
// 获取通讯录中所有的联系人
NSArray *array = (NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook);
// 遍历所有的联系人并修改指定的联系人
for (id obj in array) {
ABRecordRef people = (ABRecordRef)
NSString *fn = (NSString *)ABRecordCopyValue(people, kABPersonFirstNameProperty);
NSString *ln = (NSString *)ABRecordCopyValue(people, kABPersonLastNameProperty);
ABMultiValueRef mv = ABRecordCopyValue(people, kABPersonPhoneProperty);
NSArray *phones = (NSArray *)ABMultiValueCopyArrayOfAllValues(mv);
// firstName同时为空或者firstName相等
BOOL ff = ([fn length] == 0 && [firstName length] == 0) || ([fn isEqualToString:firstName]);
// lastName同时为空或者lastName相等
BOOL lf = ([ln length] == 0 && [lastName length] == 0) || ([ln isEqualToString:lastName]);
// 由于获得到的电话号码不符合标准,所以要先将其格式化再比较是否存在
BOOL is = NO;
for (NSString *p in phones) {
// 红色代码处,我添加了一个类别(给NSString扩展了一个方法),该类别的这个方法主要是用于将电话号码中的&(&、&)&、& &、&-&过滤掉
if ([[p iPhoneStandardFormat] isEqualToString:mobile]) {
// firstName、lastName、mobile 同时存在进行修改
if (ff && lf && is) {
if ([nickname length] & 0) {
ABRecordSetValue(people, kABPersonNicknameProperty, (CFStringRef)nickname, NULL);
if (birthday != nil) {
ABRecordSetValue(people, kABPersonBirthdayProperty, (CFDataRef)birthday, NULL);
// 保存修改的通讯录对象
ABAddressBookSave(addressBook, NULL);
// 释放通讯录对象的内存
if (addressBook) {
CFRelease(addressBook);
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:10364次
排名:千里之外
(1)(2)(2)(2)(1)为什么iPhone4恢复出产数据后通讯录联系人没有字母排序了?_百度知道
为什么iPhone4恢复出产数据后通讯录联系人没有字母排序了?
我有更好的答案
按默认排序
恢复出产后,手机的东西都会没有掉的,建议你联系人都存在SIM卡上,这样就不会出现你的问题了
其他类似问题
iphone4的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁iPhone4s通讯录联系人为什么不显示空格 之前存的都可以 为什么现在不行了 求助阿!!_百度知道
iPhone4s通讯录联系人为什么不显示空格 之前存的都可以 为什么现在不行了 求助阿!!
没越狱 - -
我有更好的答案
按默认排序
你要把联系人的姓氏和名字分开来存哇,不能都写在形式输入框里面
存的话他只显示一个空格& 像这样& 我要的是&妈妈&这种格式& 不是像&刘非&这样只显示一个空格& & 打完之后它就自动变成了一个空格
你说的现在空格是啥意思?
存的话他只显示一个空格& 像这样我要的是&妈妈&这种格式& 不是像&刘非&这样只显示一个空格& & 打完之后它就自动变成了一个空格
你复制“妈妈”这个名字粘贴到到“刘非”那,再把“妈妈”改成“刘非”试试。
也试过了 不好使 - -
你之前是不是用什么软件保存的?
没有吧 我直接在通讯录编辑里修改的阿 我不懂阿 - -
要么就是手机版本的事,你之前的版本支持,升级之后就不行了。
这么倒霉 - -
那还有什么办法么
我这个手机以前wlan能记住密码登的,现在不行了,还有就是你在输入法的时候随便按一串数字都能记录,现在也不行了。应该是升级的事
其他类似问题
您可能关注的推广回答者:
iphone4s的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 通讯录导入iphone 的文章

 

随机推荐