ユーザーのiPhoneのアドレス帳への参照を取得し、文字 'A'で始まらないすべての連絡先を除外し、そのフィルタリングされたアドレス帳を表示する方法はありますか?これはUITableViewで可能ですが、すべてのアドレス帳機能に付属の特別なビューがありますか?名前が「A」で始まるアドレス帳ビューを表示していますか?
0
A
答えて
2
姓Aで始まる、あなたのようなもの使用するすべての人々の配列を取得するには:あなたは配列を取得したら、あなたはあなたが必要な任意のカスタムビューでそれを使用することができます
ABAddressBook *ab = [ABAddressBook sharedAddressBook];
ABSearchElement *startsWithA =[ABPerson searchElementForProperty:kABLastNameProperty
label:nil key:nil
value:@"A"
comparison:kABPrefixMatchCaseInsensitive];
NSArray *peopleFound =
[ab recordsMatchingSearchElement:startsWithA];
を。
+0
これはOS Xのみです。 iOSにはABAddressBookクラスがありません – zxcat
0
このコードはfilteredPeopleあなたはこの答えは同様にあなたを助けるべきであるA.
で始まる名前を持つすべてのアドレス帳の連絡先を移入するテーブルビューのデータソースであることを前提としていますBlank field showing up on iPhone AddressBook, how to debug?
をまた、Appleは「直接の相互作用:プログラムデータベースへのアクセス」に関する広範な内容を持っているhttp://developer.apple.com/library/ios/#documentation/ContactData/Conceptual/AddressBookProgrammingGuideforiPhone/Chapters/DirectInteraction.html%23//apple_ref/doc/uid/TP40007744-CH6-SW1で
ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef people = ABAddressBookCopyArrayOfAllPeople(addressBook);
CFMutableArrayRef peopleMutable = CFArrayCreateMutableCopy(
kCFAllocatorDefault,
CFArrayGetCount(people),
people
);
NSMutableArray *allNames = (NSMutableArray*)peopleMutable;
filteredPeople = [[NSMutableArray alloc] init ];
for (id person in allNames) {
NSMutableString *firstName = [(NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty) autorelease];
if ([firstName length] > 0){
NSString* firstChar = [firstName substringToIndex:1];
if ([firstChar isEqualToString:@"A"] || [firstChar isEqualToString:@"a"]){
[filteredPeople addObject:person];
}
}
}
[self.theTableView reloadData];
CFRelease(addressBook);
CFRelease(people);
CFRelease(peopleMutable);
いいえ、あなたがアクセスできるいかなるUI、DATへcruftyプログラムによるアクセスはありません
関連する問題
- 1. AかBだけで始まる名前を表示する方法
- 2. 誰かがmysqlで私に教えてくれますか?名前がアルファベットAで始まらない従業員の名前を表示する方法は?
- 3. ラムダ式を使用してA - Cで始まる名前の男性をすべて表示する方法
- 4. iPhoneのアドレス帳に名前を追加
- 5. アドレス帳の連絡先の名前をプログラムで更新しますか?
- 6. OS Xのアドレス帳から人の表示名または合成名を取得できますか?
- 7. アドレス帳プログラムの名前の比較
- 8. 子ビューで親の名前を表示
- 9. Django、ビューを別のビューで表示していますか?
- 10. VBScriptを使用してOutlookアドレス帳にフォルダ名をプログラムで設定します。
- 11. ファイル名がaまたはbで始まるときにImageButtonsが表示されない
- 12. UACプロンプトは、msiの一時ランダムプログラム名を表示します。正しい名前を表示できますか?
- 13. iPhone:iPhone上のすべてのアドレス帳の名前はどうやって取得できますか?
- 14. 子を表示するビューで選択した親の名前を表示します。
- 15. はABNewPersonViewControllerを使用してアドレス帳に表示することができません
- 16. 特定のクラス、つまりAまたはBの件名を表示したいが、現在のIはAのみを表示していますか?
- 17. アドレス帳から画像を取得してNSmutablearrayに保存しましたが、表示中にiphone sdkで `EXCBAD Error`と表示されましたか?
- 18. メールアドレスAndroidで表示されないアドレス帳
- 19. MVCのコントローラ、ビュー、アクションの名前をハードコーディングしていますか?
- 20. アドレス帳の名前と指定された名前文字列を比較するメソッドが必要
- 21. カテゴリを名前順に表示しています - ワードプレス
- 22. 現在開いているファイルの名前を表示しますか?
- 23. スレッドが始まる前に画像を表示するC#
- 24. youtubeビデオが始まる前にカスタム画像を表示する
- 25. iPhone標準アドレスのようなビューを表示しました。
- 26. TimeZone.StandardNameがWindows 7で間違った名前を表示しています
- 27. アドレス帳に電話番号が表示されないようです。
- 28. kABPersonBirthdayPropertyを年なしでアドレス帳に保存しますか?
- 29. Google Play:アプリは名前で表示されていませんが、名前の一部は表示されていますか?
- 30. iPhoneのアドレス帳をランドスケープモードで正しく表示する方法は?
aはいくつかの回答で例示されています – bshirley