2011-08-04 60 views
1

我從通訊簿中的聯繫人在我的應用程序,但是當我拿出這並不有一些接觸,我得到一個例外。我該怎麼辦?如何查看聯繫電話爲零?! 如何檢查從通訊錄中檢索的聯繫人是否沒有電話號碼?如何檢查從通訊錄中檢索的聯繫人是否沒有電話號碼?

ABMultiValueRef multi = ABRecordCopyValue(person, kABPersonPhoneProperty); 

    if (ABMultiValueCopyValueAtIndex(multi, 0)) { 
     NSLog(@"No number available"); 
     [email protected]"No number available"; 
    } 
    else { 
    cont.number = (NSString*)ABMultiValueCopyValueAtIndex(multi, 0); 
    } 

回答

2

此代碼原本是從iPhoneDevSDK。我已經修改了一些:

ABMultiValueRef phones =(NSString*)ABRecordCopyValue(
    person, kABPersonPhoneProperty); 

CFIndex numPhoneNums = ABMultiValueGetCount(phones); 
if(numPhoneNums == 0) { 
    NSLog(@"No number available"); 
    cont.number = @"No number available"; 
} else { 
    cont.number = (NSString*) ABMultiValueCopyValueAtIndex(phones, 0); 
} 

注意這會給你第一個電話號碼,如果它存在。如果你想獲得一個特定的標籤,那麼你需要循環,在​​上測試,直到找到你想要的標籤。

+0

仍然不起作用((和什麼是name1?也許它是人? –

+0

我不是在我的Mac atm上,但什麼不起作用? – Perception

+0

根本沒有檢索到該號碼 –

相關問題