我有一个应用程序,我在弹出窗口中显示UINavigationController
,显示一些信息。根项目包含一个显示相关联系人的按钮。我想按下联系人按钮并显示ABPeoplePickerNavigationController
。我有这个代码来做:
ABPeoplePickerNavigationController *contactController = [[ABPeoplePickerNavigationController alloc] init];
[self.navigationController pushViewController:contactController animated:YES];
但是,当我按下按钮时,我收到此错误:不支持推送导航控制器。
所以:有没有办法可以访问ABPeoplePickerNavigationController
中的观看次数(使用topViewController
或visibleViewController
同时给出错误),或者可以采用其他方式来执行此操作
答案 0 :(得分:2)
使用它来显示NavigationController。您遇到的问题是您只能在控制器中推送视图而不是整个navigationController:
ABPeoplePickerNavigationController *controller = [[ABPeoplePickerNavigationController alloc] init];
// place the delegate of the picker to the controll
controller.peoplePickerDelegate = self;
NSArray *properties = [NSArray arrayWithObjects:[NSNumber numberWithInt:kABPersonPhoneProperty],nil];
controller.displayedProperties = properties;
// showing the picker
[self presentModalViewController:controller animated:YES];
你可以使用属性部分。你还必须实现代表协议。