我正在试图找出电话号码的类型(家庭,移动电话,传真等),但我无法弄清楚如何使用ABMultiValueRef
。我可以这样做:
CFStringRef cfLabel = ABMultiValueCopyLabelAtIndex(multiValueRef, i);
NSString *label = (__bridge NSString*) cfLabel;
NSLog(@"%@", label); // prints i.e "_$!<Mobile>!$_"
CFRelease(cfLabel);
因此,当它打印_$!<Mobile>!$_
时,我可以做一些IF逻辑来检查标签是否等于_$!<Mobile>!$_
但是如果Apple决定更改Mobile标签的值,将来怎么办?对我来说,拥有一个我可以检查的常数会感觉好多了。但我找不到任何使用?
答案 0 :(得分:2)
这些CFStringRef
常量在AddressBook框架中定义(准确地说是ABPerson.h):
kABPersonPhoneMobileLabel
kABPersonPhoneIPhoneLabel
kABPersonPhoneMainLabel
kABPersonPhoneHomeFAXLabel
kABPersonPhoneWorkFAXLabel
kABPersonPhoneOtherFAXLabel
kABPersonPhonePagerLabel
特别是,kABPersonPhoneMobileLabel
具有_$!<Mobile>!$_
值。
有关这些以及AddressBook框架定义的其他常量的更多信息,请参阅ABPerson reference。
答案 1 :(得分:0)