2014-01-29 2 views
0

Я пытаюсь создать пользовательскую кнопку возврата на панели навигации. Я начинаю из следующих функций:iOS 7 NavigationBar Back Button Пользовательское изображение без ярлыка

// Nav bar - back button 
[[UINavigationBar appearance] setTintColor:COLOR_WHITE]; 
[[UINavigationBar appearance] setBackIndicatorImage:[[UIImage imageNamed:@"navMenuBackButton"] 
                imageWithAlignmentRectInsets:UIEdgeInsetsMake(6.0, -6.0, 6.0, -6.0)]]; 
[[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"navMenuBackButton"]]; 

Изображение 34x34 точки так, не правильно центрировать без выравнивания изображения. Текущая проблема заключается в том, чтобы избавиться от метки «Назад», не устанавливая пустой заголовок для каждого экрана или не внося никаких изменений в сам ViewController.

Любые идеи? Спасибо

+1

Мысли вслух действительно: Как насчет подклассов UINavigationBar затем с помощью 'UINavigationController - (instancetype) initWithNavigationBarClass: (класс) navigationBarClass toolbarClass: (класс) toolbarClass' –

ответ

0

Пробовали ли вы это:

NSString *backString = @""; 
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:backString 
                   style:UIBarButtonItemStyleDone 
                   target:nil 
                   action:nil]; 
[[self navigationItem] setBackBarButtonItem:backButton]; 
+0

Да. Он работает так же, как 'self.navigationItem.title = @" ";' Но это нужно вызывать для каждого контроллера просмотра, который я хочу попробовать и избегаю – rjinski

1

Отключить leftBarButtonItem и rightBarButtonItem. Попробуйте следующее.

[navigationItem.backItem.leftBarButtonItem setEnabled:NO]; 
[navigationItem.backItem.rightBarButtonItem setEnabled:NO]; 
[navigationItem.backItem setHidesBackButton:YES]; 
+0

Я пробовал это, но до сих пор не радуюсь ... – rjinski