• ios实现通讯录的查询与删除


    os提供了对通讯录操作的组建,其中一个是直接操作通讯录,另一个是调用通讯录的UI组建。实现方法如下:

    添加AddressBook.framework到工程中。

    image

    代码实现:

        -(IBAction)onClickbutton:(id)sender
       
    {
           
    NSMutableArray* personArray =[[[NSMutableArray alloc] init] autorelease];
           
    ABAddressBookRef addressBook =ABAddressBookCreate();
           
    NSString*firstName,*lastName,*fullName;
            personArray
    =(NSMutableArray*)ABAddressBookCopyArrayOfAllPeople(addressBook);
           
    if([sender tag]==0){

               
    for(id *person in personArray)
               
    {
                    firstName
    =(NSString*)ABRecordCopyValue(person, kABPersonFirstNameProperty);
                    firstName
    =[firstName stringByAppendingFormat:@" "];
                    lastName
    =(NSString*)ABRecordCopyValue(person, kABPersonLastNameProperty);  
                    fullName
    =[firstName stringByAppendingFormat:@"%@",lastName];
                   
    NSLog(@"===%@",fullName);
                   
    ABMultiValueRef phones =(ABMultiValueRef)ABRecordCopyValue(person, kABPersonPhoneProperty);
                   
    for(int i =0;i <ABMultiValueGetCount(phones); i++)
                   
    {
                       
    NSString*phone =(NSString*)ABMultiValueCopyValueAtIndex(phones, i);
                       
    NSLog(@"===%@",phone);
                   
    }
                   
    ABMultiValueRef mails =(ABMultiValueRef)ABRecordCopyValue(person, kABPersonEmailProperty);
                   
    for(int i =0;i <ABMultiValueGetCount(mails); i++)
                   
    {
                       
    NSString*mail =(NSString*)ABMultiValueCopyValueAtIndex(mails, i);
                       
    NSLog(@"==%@",mail);
                   
    }      
               
    }  
           
    }else{
               
    //删除信息
               
    //返回所有联系人到一个数组中
               
    CFArrayRef personArray =ABAddressBookCopyArrayOfAllPeople(addressBook);
               
    CFIndex personCount =ABAddressBookGetPersonCount(addressBook);
                 
    for(int i =0;i<personCount;i++){
                     
    ABRecordRefref=CFArrayGetValueAtIndex(personArray, i);
                     
    CFStringRef firstName1 =ABRecordCopyValue(ref, kABPersonFirstNameProperty);
                     
    CFStringRef lastName1 =ABRecordCopyValue(ref, kABPersonLastNameProperty);
                     
    NSString*contactFirstLast =[NSString stringWithFormat: @"%@%@",(NSString*)firstName1,(NSString*)lastName1];
                   
    if([contactFirstLast isEqualToString:@"徐梦"]){
                       
    //删除联系人
                       
    ABAddressBookRemoveRecord(addressBook,ref,nil);
                   
    }
               
    }
               
    //保存电话本
               
    ABAddressBookSave(addressBook,nil);  
               
    //释放内存
               
    //CFRelease(personRef);
       
    //        CFRelease(addressbookRef);
           
    }
       
    }风之境地 java-javascript 蘑菇街女装

  • 相关阅读:
    java中equals和==的区别 (转)
    LoadRunner常见问题整理(转)
    python 遇到 syntaxerror: non-ascii character '/xd6' in file 我 教你解决 (python问题)(转)
    Linux查看系统性能命令
    android权限大全
    StringTokenizer类的使用
    web_reg_find()查询信息为变量
    Loadrunner执行Java脚本
    LoadRunner调用Java程序—性能测试
    Request Connection: Remote Server @ 192.229.145.200:80
  • 原文地址:https://www.cnblogs.com/sky7034/p/2000581.html
Copyright © 2020-2023  润新知