Почему моя правая кнопка UInavigationController исчезает после загрузки - PullRequest
0 голосов
/ 08 февраля 2012

Я использую следующий код, чтобы выдвинуть контроллер представления, когда пользователь нажимает на UIButton

- (IBAction)showListPicker:(id)sender {
    if([audioPlayer isPlaying])
    {
        [audioPlayer stop];
    }

    ListPicker *lp = [[ListPicker alloc] initWithStyle:UITableViewStyleGrouped];

    [[self navigationController] pushViewController:lp animated:YES];
    [lp release];
}

В ViewDidLoad ListPicker я использую следующий код, чтобы добавить правую кнопку навигации

-(void)viewDidLoad{
    [[self navigationController] setNavigationBarHidden:NO];
    [[[self navigationController] navigationBar] setTintColor:[UIColor brownColor]];

    [[self view] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]];

   UIBarButtonItem *button = [[UIBarButtonItem alloc]
                               initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
                               target:self
                               action:@selector(doSomething:)];

    [[self navigationItem] setRightBarButtonItem:button];

    [button release]; 
}

Когда вид загружен, я могу кратко увидеть правую кнопку, но затем она сразу исчезает. Что я делаю не так?

Спасибо.

1 Ответ

1 голос
/ 08 февраля 2012

Я предполагаю, что XIB вашего ListPicker содержит еще одну панель навигации, закрывающую панель фактического контроллера навигации.Вот почему вы видите это на мгновение, а затем оно «исчезает».Если это не что-то в XIB, проверьте код на всем пути от создания этого нового контроллера представления до viewDidAppear ListPicker.

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