1

如何自定义 CNContactPickerViewController 的 UI?

我想更改颜色、字体和文本 - 类似于 snapchat 的做法?

在此处输入图像描述

目前 - 我的 CNContactPickerViewController 看起来与 Apple 的本地联系人应用程序一模一样。

4

1 回答 1

1

首先从通讯录中获取联系人并将它们传递到NSArray

CNContactStore *store = [[CNContactStore alloc] init];
[store requestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError * _Nullable error) {

    NSMutableArray *contacts = [NSMutableArray array];

    NSError *fetchError;
    CNContactFetchRequest *request = [[CNContactFetchRequest alloc] initWithKeysToFetch:@[CNContactIdentifierKey, [CNContactFormatter descriptorForRequiredKeysForStyle:CNContactFormatterStyleFullName]]];

    BOOL success = [store enumerateContactsWithFetchRequest:request error:&fetchError usingBlock:^(CNContact *contact, BOOL *stop) {
        [contacts addObject:contact];
    }];
    if (!success) {
        NSLog(@"error = %@", fetchError);
    }
}];

然后只需使用NSArrayin a UITableView,您就可以从那里自定义字体、颜色等。

于 2015-10-20T21:50:54.217 回答