設定方法を教えてください、ABPeoplePickerNavigationControllerの迅速?
-
19-09-2019 - |
質問
このコードを使用している人にピッカーが、迅速なラベルテキスト変わりません:
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
picker.peoplePickerDelegate = self;
picker.displayedProperties = [NSArray arrayWithObjects: [NSNumber numberWithInt:kABPersonEmailProperty], nil];
picker.navigationItem.prompt = @"Choose a contact to...";
[self presentModalViewController:picker animated:YES];
解決
あなたはとタイトルを変更することができます:
picker.navigationBar.topItem.title = @"iPhone Contacts";
そして、あなたがして、プロンプトを変更することができます:
picker.navigationBar.topItem.prompt = @"iPhone Contacts";
他のヒント
があり他の回答に不足している情報の重要な部分であり、非常に明白ではありません。あなたは、プロンプトのを設定する必要がありますの行の後:
[self presentModalViewController:picker animated:YES];
あなたはこのようにそれを行うのであれば、それは動作します:
[self presentModalViewController:picker animated:YES];
picker.navigationBar.topItem.prompt = @"Choose a contact to...";
私はこれを行う方法につまずいてきました。しかし、私はそれが最善の方法だか分かりません。ちょうどライン上のコードに置き換えます。
picker.navigationItem.prompt = @"Choose a contact to...";
タグ付き
picker.navigationBar.topItem.prompt = @"Choose a contact to...";
だサブclassingのABPeoplePickerNavigationControllerこれを設定する必要がありま一度のコントローラーを押します。これは何のこのリヨハン提案が内部からのクラスです。
のABPeoplePickerNavigationControllerは以下を実装する委譲方法はこのように:
-(void)navigationController:(UINavigationController *)navigationController
willShowViewController:(UIViewController *)viewController
animated:(BOOL)animated
{
[[[self navigationBar] topItem] setPrompt:@"test"];
}
所属していません StackOverflow