Ios 在swift中是否没有KCFComparequalto?
我正在尝试获取联系人列表中某个人的电话号码,但在比较两个cfstring时遇到了问题,因为我似乎找不到swift中可用的KCFComparequalto属性 在Objective中,您可以执行以下操作:Ios 在swift中是否没有KCFComparequalto?,ios,swift,abrecordref,Ios,Swift,Abrecordref,我正在尝试获取联系人列表中某个人的电话号码,但在比较两个cfstring时遇到了问题,因为我似乎找不到swift中可用的KCFComparequalto属性 在Objective中,您可以执行以下操作: ABMultiValueRef phonesRef = ABRecordCopyValue(person, kABPersonPhoneProperty); for (int i=0; i < ABMultiValueGetCount(phonesRef); i++) { CFS
ABMultiValueRef phonesRef = ABRecordCopyValue(person, kABPersonPhoneProperty);
for (int i=0; i < ABMultiValueGetCount(phonesRef); i++) {
CFStringRef currentPhoneLabel = ABMultiValueCopyLabelAtIndex(phonesRef, i);
CFStringRef currentPhoneValue = ABMultiValueCopyValueAtIndex(phonesRef, i);
if (CFStringCompare(currentPhoneLabel, kABPersonPhoneMobileLabel, 0) == kCFCompareEqualTo) {
[contactInfoDict setObject:(__bridge NSString *)currentPhoneValue forKey:@"mobileNumber"];
}
试试这个:
if ( CFStringCompare(currentPhoneLabel, kABPersonPhoneMobileLabel, 0) == CFComparisonResult.CompareEqualTo) {
}
希望这有帮助:) 正确的实现是:
if (CFStringCompare(mediaType as CFString, kUTTypeImage, .CompareCaseInsensitive) == CFComparisonResult.CompareEqualTo ){
}
我收到一个错误:CFComparisonResult无法转换为Selector或尝试将currentPhoneLabel强制转换为CFString?是的,我强制转换了currentPhoneLabel请尝试将CFStringCompare(currentPhoneLabel,KabbersonPhoneMobileLabel,0)强制转换为CFComparisonResult。有时这会产生错误。我根据你的建议尝试了一些东西@Rashad看看我所做的编辑
if ( CFStringCompare(currentPhoneLabel, kABPersonPhoneMobileLabel, 0) == CFComparisonResult.CompareEqualTo) {
}
if (CFStringCompare(mediaType as CFString, kUTTypeImage, .CompareCaseInsensitive) == CFComparisonResult.CompareEqualTo ){
}