Apple の Address book プログラミング ガイドに従おうとしていますが、peoplePickerController について質問があります。Apple チュートリアルの写真の例には、右上に「プラス」ボタンがあり、ユーザーは peoplePickerController を介して新しい連絡先を追加できるようです。
経由で ABPeopleNavigationControllerPicker を呼び出しました
- (void)showPicker
{
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
picker.peoplePickerDelegate = self;
[self presentViewController:picker animated:YES completion:nil];
}
ただし、プラス ボタンの代わりに、画面の右上にキャンセル ボタンがあります。ボタンを変更したり、ユーザーがこのView Controllerを介して新しい連絡先を追加できるようにするオプションはありますか?
しばらくGoogle検索を行った後、以下が見つかりました。だから私はプログラムでバーボタンを変更しようとしました...
- (void)addPerson
{
ABNewPersonViewController *newPersonVC = [[ABNewPersonViewController alloc] init];
newPersonVC.newPersonViewDelegate = self;
UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:newPersonVC];
[self presentViewController:nc animated:YES completion:nil];
}
- (void)showPicker
{
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
picker.topViewController.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addPerson)];
picker.peoplePickerDelegate = self;
[self presentViewController:picker animated:YES completion:nil];
}
ただ、なぜかバーボタンが「追加」ではなく「キャンセル」のまま固定されている…