Как импортировать список контактов из адресной книги iphone в мое приложение?

- (void)viewDidLoad {
    [super viewDidLoad];

    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.

    UIBarButtonItem *btn = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"2.png"] style:UIBarButtonItemStyleBordered target:self action:nil];
    self.navigationItem.rightBarButtonItem = btn;

    self.navigationItem.title = @"Contacts";

    sBar = [[UISearchBar alloc]initWithFrame:CGRectMake(0,0,320,30)];
    sBar.delegate = self;

    [self.view addSubview:sBar];
    sBar.placeholder=@"Search";


    searchedData = [[NSMutableArray alloc]init];

    tableData = [[NSMutableArray alloc]init];

    [tableData addObjectsFromArray:dataSource]; 
}

3 ответа

Следующее краткое руководство по документации Apple для iOS поможет вам начать работу над этим.

Руководство по программированию адресной книги для iPhone - QuickStart

Он показывает, как импортировать AddressBookUI/AddressBookUI.h Заголовки и открыть сборщик родных людей, а также слушать, когда человек выбран.

ABPerson функция [ABAddressBookCopyArrayOfAllPeople] будет работать здесь.

ABAddressBookRef addressBook = ABAddressBookCreate( );
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople( addressBook );
CFIndex nPeople = ABAddressBookGetPersonCount( addressBook );

for ( int i = 0; i < nPeople; i++ )
{
    ABRecordRef ref = CFArrayGetValueAtIndex( allPeople, i );
    ...
}

После получения массива npeople вы можете отобразить его в вашем tableView или сделать все, что захотите.

Вам нужно будет реализовать следующий метод делегата таблицы, чтобы фактически заставить вашу таблицу отображать данные.

    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

Вы можете найти больше документации по UITableView Вот

Другие вопросы по тегам