2015-03-25 45 views
4

根據文檔ABPersonCopyArrayOfAllLinkedPeopleiOS:如何從ABPersonCopyArrayOfAllLinkedPeople返回的鏈接聯繫人數組中獲取「主」ABPersonRef?

「返回的地址簿數據庫 所有的個人記錄鏈接到指定的個人記錄的數組」。

但我看到如何此陣列內得到ABPersonRef沒有線索用戶/ IOS已choosen /集是「主要」接觸(即,在接觸應用被示出。)?

更新: 下面的截圖應該更清楚我在說一下: 假設你有模擬器標準觸點(圖一)以任何理由您認爲凱特和安娜實際上是相同的人 - 那麼你可以鏈接這兩個。選擇凱特,單擊編輯凱特(圖二),點擊鏈接(圖三),選擇安娜(PIC 4),確認該關聯(PIC 5) - 再接觸應用程序將只顯示安娜(圖6)。當我在Anna或Kate上查詢ABPersonCopyArrayOfAllLinkedPeople時,它會同時返回Anna和Kate。但通過編程,我無法告訴哪個ABPersonRef是標準聯繫人應用程序選擇顯示的那個ABPersonRef。

產品圖1: 1 產品圖2: 2 產品圖3: 3 產品圖4: enter image description here 產品圖5: enter image description here 產品圖6: enter image description here

+0

好吧,現在我得到了你的問題,所以我刪除了我的答案,因爲它不是根據你的問題。現在我會盡力解決這個問題,如果可能的話再回答。 – iHulk 2015-03-25 14:59:16

回答

-1

使用以下代碼來獲取主要聯繫人

NSString *primaryContact = (__bridge_transfer NSString*)ABPersonCopyArrayOfAllLinkedPeople(kABPersonPhoneMainLabel); 
+0

謝謝你的回答 - 但我對你的代碼感到有點驚訝。 ABPersonCopyArrayOfAllLinkedPeople返回一個CFArrayRef並將一個ABPersonRef作爲參數。你想如何將它轉換爲NSString並使用CFStringRef作爲參數?此外,PhoneMainLabel必須做什麼鏈接聯繫人?可能是我在這裏錯過了一些很大的東西,或者我的問題沒有我想象的那麼清楚。你能否再解釋一下這應該如何工作?對不起,但我真的不理解它,並且無法在xcode中使用它)... – McMini 2015-03-25 12:35:41

相關問題