backBarButtonItem в навигационном контроллере не отображается - PullRequest
3 голосов
/ 21 июля 2011

Я запустил свой проект xcode из шаблона NavigationViewController. И теперь, когда я нажимаю на представление, в этом представлении появляется кнопка редактирования по умолчанию, а не кнопка задней панели. Я закомментировал код editButton и соответствующий метод делегата setEditing. Но я не могу получить кнопку назад, чтобы показать. Что я делаю не так?

Нажатие нового вида:

PlaylistViewController *playlistViewController = [[PlaylistViewController alloc] init];
playlistViewController.managedObjectContext = self.managedObjectContext;

[self.navigationController pushViewController:playlistViewController animated:YES];
[playlistViewController release];

в моем PlaylistViewController:

- (void)viewDidLoad {
    [super viewDidLoad];

    self.title = @"";

    // self.navigationItem.leftBarButtonItem = self.editButtonItem;

    // doesn't matter if this is here or not
    self.navigationItem.hidesBackButton = false;

    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(insertNewObject)];
    self.navigationItem.rightBarButtonItem = addButton;
    [addButton release];
}

1 Ответ

6 голосов
/ 21 июля 2011

Когда вы указываете UINavigationController значение pushViewController , он автоматически устанавливает navigationItem.leftBarButtonItem в качестве кнопки с заголовком предыдущего заголовка UIViewController.

Еслизаголовок не задан, текст по умолчанию - «Назад».

Если заголовок установлен на «», кнопка не будет отображаться вообще.

self.title = @"";

Попробуйте изменить этот текст и вашКнопка назад должна соответствовать тексту, установленному здесь.

Или вы можете вручную переопределить текст leftBarButtonItem из вашего нового UIViewController.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...