0

我想知道什麼是最好的(最快和最簡單)的方式來使用iPhone的地址簿聯繫人信息自動完成textfield 。在iPhone上實現地址簿自動完成的最佳方式?

每次按鍵速度足夠快時會訪問地址簿嗎? 還是我必須加載一切在我自己的本地數據庫(CoreData通常)? 另一種方式是在每次啓動應用程序時將所有內容加載到內存中。有關訪問速度的任何經驗 ?

ADDED:我想避免加載地址簿內容的本地副本,因爲它不僅需要編寫更多代碼,還需要在地址簿修改時同步本地副本。

+0

什麼樣的聯繫人信息會出現在自動完成字段中? – malinois 2011-03-08 10:52:35

+0

姓名(第一個和最後一個),電子郵件或電話號碼。用戶應該能夠使用任何這些細節來選擇一個聯繫人 – CodeFlakes 2011-03-08 11:56:45

回答

1

會訪問通訊錄各個 時間一鍵快夠了嗎?

可能不適合大型書籍,但測試一看。你可以給每個額外的字符打電話ABAddressBookCopyPeopleWithName,看看彈出的是什麼。您很可能需要最少數量的字符,例如3之前執行搜索,否則你會得到很多的每個第一個字符的回報。

但是,我不認爲有電話號碼和地址的功能。

另一種方法是創建一個帶有字母和數字的樹形數據結構,該數據結構可以分支到包含特定AddressBook條目的ABRecordID的葉。使用核心數據關係是一種快捷簡單的方法。當然,你必須不斷更新你的樹。

相關問題