相关疑难解决方法(0)

如何将ABRecordRef添加到iPhone中的NSMutableArray?

我想创建一个ABRecordRef(s)数组来存储具有有效生日字段的联系人.

   NSMutableArray* bContacts = [[NSMutableArray alloc] init];
   ABAddressBookRef addressBook = ABAddressBookCreate();
   CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);
   CFIndex nPeople = ABAddressBookGetPersonCount(addressBook);

   for( int i = 0 ; i < nPeople ; i++ )
   {
       ABRecordRef ref = CFArrayGetValueAtIndex(allPeople, i );
       NSDate* birthdayDate = (NSDate*) ABRecordCopyValue(ref, kABPersonBirthdayProperty);
       if (birthdayDate != nil){
           [bContacts addObject:ref];
       }
   }
Run Code Online (Sandbox Code Playgroud)

编译器显示此警告: 警告:传递'addObject:'的参数1'从指针目标类型中丢弃限定符 我在Web上搜索并发现我必须将ABRecordRef强制转换为ABRecord*以便能够存储在NSMutableArray中.

[bContacts addObject:(ABRecord*) ref];
Run Code Online (Sandbox Code Playgroud)

但似乎ABRecord不是iOS框架的一部分.现在我如何将ABRecordRef存储到NSMutableArray?

iphone xcode objective-c nsmutablearray addressbook

10
推荐指数
3
解决办法
7237
查看次数

标签 统计

addressbook ×1

iphone ×1

nsmutablearray ×1

objective-c ×1

xcode ×1