我试图在'didSelectRowAtIndexPath:'方法中打开ABPersonViewController。但是,当我点击我在桌面视图中的一个记录时,它没有显示任何内容。我无法配置出问题的位置。 '人'是具有联系人姓名的阵列。 这是我的代码:
(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { ABRecordRef person = (ABRecordRef)[people objectAtIndex:indexPath.row]; ABPersonViewController *pvc = [[ABPersonViewController alloc] init]; pvc.personViewDelegate = self; pvc.displayedPerson = person; [self.navigationController pushViewController:pvc animated:YES]; [pvc autorelease]; } - (BOOL)personViewController:(ABPersonViewController *)personViewController shouldPerformDefaultActionForPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifierForValue { return NO; }
答案 0 :(得分:1)
您需要设置displayedProperties
。默认情况下为NULL
。
例如,
picker.displayedProperties = [NSArray arrayWithObject:
[NSNumber numberWithInt:kABPersonAddressProperty]];