Я пытаюсь изменить кнопки панели навигации UIImagePickerController. До сих пор я только успел сменить кнопку элемента правого бара (кнопку «Отмена»):Настройка элементов навигации UIImagePickerController
- (void)navigationController:(UINavigationController *)navigationController
willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
UINavigationBar *bar = navigationController.navigationBar;
UINavigationItem *top = bar.topItem;
top.title = @"Photos";
UIImage *buttonImageCancel = [UIImage imageNamed:@"DoneBarButton.png"];
UIButton *buttonCancel = [[UIButton alloc] initWithFrame:CGRectMake(0,5,55, 29)];
[buttonCancel setBackgroundImage:buttonImageCancel forState:UIControlStateNormal];
[buttonCancel addTarget:self action:@selector(imagePickerControllerDidCancel:) forControlEvents:UIControlEventTouchUpInside];
[buttonCancel setTitle:@"Cancel" forState:UIControlStateNormal];
[buttonCancel setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[[buttonCancel titleLabel] setFont:[UIFont boldSystemFontOfSize:10]];
UIBarButtonItem *barButtonCancel = [[UIBarButtonItem alloc] initWithCustomView:buttonCancel];
[top setRightBarButtonItem:barButtonCancel]; }
Но в других контроллерах зрения (например, «Photo Library») «Отмена» кнопка старой один раз , Кроме того, после переключения на режим главного выбора, настроенная кнопка «Отмена» снова заменяется стандартной. Кто-нибудь знает, как сменить эти кнопки? Наследование? Большое спасибо!
Спасибо, ctreave. Как мне это реализовать? – saeppi
сделать категорию в UINavigationController и реализации, как следующим образом: осуществление UINavigationBar (MyNavigationBar) - (Недействительными) DrawRect: (CGRect) прямоугольник { // установить кнопки здесь } @end вы можете попробовать это [ссылка] (https: //developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocCategories.html#//apple_ref/doc/uid/TP30001163-CH20-TPXREF139) –
Новая категория в UINavigationController или UINavigationBar? – saeppi