我正在尝试将ABRecordRef项添加到我的NSMutableArray中。刚了解到需要使用(_bridgeid)将CTypeDef转换为Objective-Cid类型。因此,在将新项添加到数组之前,我想检查该对象是否已经在数组中。因此,我尝试使用[nsmutablearraycontainsObject]但它似乎不起作用。重复项仍会添加到数组中。你知道这里可能出了什么问题吗?-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePickershouldContinueAf
我想将ABRecordRef转换为vCard或NSData以通过蓝牙传输。我遇到了你的问题,我想知道你是否能弄清楚该怎么做。谢谢 最佳答案 非常简单,我正在使用iOS6并使用以下代码完成:ABRecordRefperson=(__bridgeABRecordRef)[_ABRecordCardsobjectAtIndex:0];ABRecordRefpeople[1];people[0]=person;CFArrayRefpeopleArray=CFArrayCreate(NULL,(void*)people,1,&kCFTypeA
我有两个tableViewController。第一个有联系人列表。另一个显示详细的人的信息。第一个tableViewController的一段代码ABAddressBookRefaddressBook=ABAddressBookCreate();ABRecordRefsource=ABAddressBookCopyDefaultSource(addressBook);NSArray*allPeople=(__bridge_transferNSArray*)ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(address
我开始使用Objective-C学习编程,对C的了解不多。因此,iOS6中的桥接转换对我来说仍然有些困惑。场景如下:我将一个人的ABRecordID作为“NSNumber”属性存储在CoreData中。后来,我想直接访问那个人,所以我想使用这个人的ABRecordID来访问使用ABAddressBook的联系信息。注意到ABAddressBookGetPersonWithRecordID需要ABRecordID,下面是我在代码中执行转换的方式...address_book=ABAddressBookCreate();ABRecordIDrec_id=(__bridgeABRecordI
我已经访问了地址簿并且成功地从中完全提取了记录和必要的信息。我还提取了recordid。我的问题是以后如何使用这个recordid来提取记录。我使用的代码是:ABRecordIDrecordId;ABAddressBookRef_addressBookRef=ABAddressBookCreate();NSArray*allPeople=(NSArray*)ABAddressBookCopyArrayOfAllPeople(_addressBookRef);for(idrecordinallPeople){recordId=ABRecordGetRecordID(record);//i
如何从Unmanaged类型的对象中获取Swift类型的值.我的示例使用ABRecordRef一旦我得到ABRecordRef,我正在创建一个联系人对象来管理,但我在从ObjC翻译时遇到了问题。这是我拥有的:init(recordRef:ABRecordRef){ifletfirstName=ABRecordCopyValue(recordRef,kABPersonFirstNameProperty){self.firstName=firstName}}如果是ObjC,我会这样做:CFTypeReffirstNameRef=ABRecordCopyValue(recordRef,kAB
如何从Unmanaged类型的对象中获取Swift类型的值.我的示例使用ABRecordRef一旦我得到ABRecordRef,我正在创建一个联系人对象来管理,但我在从ObjC翻译时遇到了问题。这是我拥有的:init(recordRef:ABRecordRef){ifletfirstName=ABRecordCopyValue(recordRef,kABPersonFirstNameProperty){self.firstName=firstName}}如果是ObjC,我会这样做:CFTypeReffirstNameRef=ABRecordCopyValue(recordRef,kAB
当遍历所有地址簿联系人时,有没有办法查看记录是否为Facebook-only记录?即在iOS设置中添加Facebook时插入的地址簿记录。我试图跳过这些记录,只查看用户输入的或从其他来源同步的记录。谢谢 最佳答案 使用此代码段,您可以检测Facebook联系人:+(BOOL)isPersonFacebookContact:(ABRecordRef)person{ABMultiValueRefinstantMessage=ABRecordCopyValue(person,kABPersonInstantMessageProperty)
您好,我使用以下代码并通过了abid,我能够向安装了WhatsApp的用户发送消息,但是在我发送消息之前我如何知道用户已经设置了WhatsApp?如果该选项不适用于特定用户,我不想启用该选项。[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:[NSStringstringWithFormat:@"whatsapp://send?abid=%d&text=%@",abid,@""]]]; 最佳答案 不,你不能。ABADressBook与WhatsApp没有关联,o
[背景:iOS7、Xcode5,均为2014年2月最新版本。测试数据是iPhone5(真实设备,非模拟器)]我的目标是使用AddressBookUI方法允许用户指定联系人,然后使用各种字段(地址、电话号码等)在我的代码中填充GUI。ABPeoplePickerNavigationController是允许用户按姓名选择联系人的标准机制。这样做会导致调用此委托(delegate)方法:-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePickershouldContinue