2014-10-11 23 views
1

我需要顯示某種用戶友好字符串,它從他們的地址簿記錄中識別出一個人。由於個人記錄可以具有名,姓,暱稱,中間名的任何組合,並且可以有用於顯示它們的用戶偏好的任意組合(縮短姓或名,首選暱稱,姓氏等等),所以它是很快成爲我自己完成的一項巨大任務。IOS:是否有一種簡單的方式將用戶喜歡的方式將聯繫人的可用名稱格式化爲字符串?

有沒有例行我還沒有找到,會爲我做這個格式?

例如,是這樣的:

NSString *displayName = (__bridge NSString*)APIGetDisplayNameForPersonRecord(self.selectedPerson); 

相反的:

NSString *firstName = (__bridge_transfer NSString*) ABRecordCopyValue(self.selectedPerson, kABPersonFirstNameProperty); 
NSString *lastName = (__bridge_transfer NSString*) ABRecordCopyValue(self.selectedPerson, kABPersonLastNameProperty); 
NSString *nickname = (__bridge_transfer NSString*) ABRecordCopyValue(self.selectedPerson, kABPersonNicknameProperty); 

NSString *displayName = @""; 
if(firstName) displayName = firstName; 
if(lastName) // ... 
if(nickname) // ... 
// lots of logic 
+0

你能舉個例子嗎?你是否嘗試寫一些代碼? – Raptor 2014-10-11 01:23:15

+0

我不確定你在問什麼,但我會試一試。 – Andreas 2014-10-12 09:42:42

+0

你的顯示偏好來自哪裏? – Wain 2014-10-12 09:57:21

回答

0

我能找到的最接近的是ABRecordCopyCompositeName()這是不夠好。

相關問題