所以我有一个MKMapView
,我有一个带有公开按钮的针脚。我希望用户能够点击公开按钮和导航控制器来推送新的视图控制器。但我希望新的视图控制器看起来像联系人应用程序中标准的联系人viewController
。我需要它来显示自定义联系信息,因为联系人不在用户联系人中。我一直在玩ABPerson,但我无法理解。我希望该联系页面看起来与标准页面完全一样。这就是我一直在玩的:
ABPersonViewController *view = [[ABPersonViewController alloc] init];
ABPerson *person;
ABRecordRef ABPersonCreate (
void
);
view.personViewDelegate = self;
view.displayedPerson = person;
view.allowsEditing = NO;
[self.navigationController pushViewController:view animated:YES];
[view release];
我不确定该怎么做。我想要显示的联系信息包括商家名称,地址,电话号码等等。
非常感谢你。
答案 0 :(得分:2)
以下是应该如何做的:
ABUnknownPersonViewController *newPersonViewController = [[ABUnknownPersonViewController alloc] init];
newPersonViewController.displayedPerson = [self personObject];
[self.navigationController pushViewController:newPersonViewController animated:YES];
而不是回复[self personObject]
- (ABRecordRef)personObject {
// Create a new Person object.
ABRecordRef newRecord = ABPersonCreate();
// Setting the value to the ABPerson object.
//ABRecordSetValue(newRecord, kABPersonKindOrganization, @"Business Name", nil);
ABMutableMultiValueRef multiPhone = ABMultiValueCreateMutable(kABMultiStringPropertyType);
ABMultiValueAddValueAndLabel(multiPhone, @"1-555-555-5555", kABPersonPhoneMainLabel, NULL);
ABRecordSetValue(newRecord, kABPersonPhoneProperty, multiPhone,nil);
CFRelease(multiPhone);
return newRecord;
}