DidSelectRowAtIndex的ABPersonVIewController - 方法

时间:2011-05-26 12:30:23

标签: iphone

我试图在'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;
}

1 个答案:

答案 0 :(得分:1)

您需要设置displayedProperties。默认情况下为NULL

例如,

     picker.displayedProperties = [NSArray arrayWithObject:
          [NSNumber numberWithInt:kABPersonAddressProperty]];