Как добавить кнопку на панель инструментов с помощью Three20? - PullRequest
2 голосов
/ 23 августа 2011

Я пытаюсь использовать это, чтобы добавить кнопку на панель инструментов:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    [self.navigationController setToolbarHidden:NO animated:NO];
    self.navigationController.toolbar.translucent = YES;
    self.navigationController.toolbar.barStyle    = UIBarStyleBlack;

    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.frame = CGRectMake(0.0, 0.0, 10.0, 10.0);

    UIBarButtonItem *infoButton = [[UIBarButtonItem alloc] initWithCustomView:button];

    NSMutableArray *a = [NSMutableArray arrayWithObject:infoButton];

    [self.navigationController setToolbarItems:a];
}

Но на панели инструментов нет кнопки, когда я запускал приложение! (

1 Ответ

2 голосов
/ 23 августа 2011

Вместо установки контроллеров навигации toolBarItems свойство попробуйте установить его в текущем отображаемом контроллере вида, например так:

[self setToolbarItems:[NSArray arrayWithObjects:infoButton, nil]];

Также добавление infoButton к toolBarItems автоматически сохранит его.Поэтому не забудьте разместить

[infoButton release];

в нижней части вашего viewWillAppear метода.

...