如何在iPhone中的NSMutableArray中添加ABRecordRef? [英] how can I Add a ABRecordRef to a NSMutableArray in iPhone?

查看:97
本文介绍了如何在iPhone中的NSMutableArray中添加ABRecordRef?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I want to create an array of ABRecordRef(s) to store contacts which have a valid birthday field.

   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];
       }
   }

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

The compiler shows this warning: warning: passing argument 1 of 'addObject:' discards qualifiers from pointer target type I searched the web and found I have to cast ABRecordRef to a ABRecord* to be able to store in a NSMutableArray.

[bContacts addObject:(ABRecord*) ref];

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

But it seems ABRecord is not part of iOS frameworks. Now how I store ABRecordRef to NSMutableArray?

推荐答案

[bContacts addObject:(id) ref];

这篇关于如何在iPhone中的NSMutableArray中添加ABRecordRef?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆