Проблема кнопок панели инструментов контроллера навигации - Xcode - PullRequest
0 голосов
/ 22 марта 2012

Я пытаюсь добавить какую-нибудь кнопку на панель инструментов моего навигационного контроллера: я вижу панель инструментов, но без кнопок. Это часть моего кода, где я установил панель инструментов ...

(это мой AppDelegate)

// Create a table view controller
    RootViewController *rootViewController = [[RootViewController alloc]
                                              initWithStyle:UITableViewStyleGrouped];

    rootViewController.managedObjectContext = context;
    rootViewController.entityName = @"County";

    //Navigation Controller
    UINavigationController *aNavigationController = [[UINavigationController alloc]
                                                     initWithRootViewController:rootViewController];

    self.navigationController = aNavigationController;


    //Barbuttons
    UIBarButtonItem *homeButton;
    homeButton = [[[UIBarButtonItem alloc] initWithTitle:@"         Inizio         " style:UIBarButtonItemStyleBordered target:self action:@selector(home)] autorelease];

    UIBarButtonItem *barButton;
    barButton = [[[UIBarButtonItem alloc] initWithTitle:@"  Funzioni online   " style:UIBarButtonItemStyleBordered target:self action:@selector(caricamappa)] autorelease];

    UIBarButtonItem *creditsButton;
    creditsButton = [[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"credits2.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(credits)] autorelease];    

    NSArray *baritems = [NSArray arrayWithObjects: homeButton, barButton, creditsButton, nil];

    [window addSubview:[navigationController view]];
    [self.navigationController.toolbar setItems:baritems];
    [self.navigationController setToolbarHidden:NO];


    [window makeKeyAndVisible];

    [rootViewController release];
    [aNavigationController release];

Есть идеи о моей ошибке?

Ответы [ 2 ]

1 голос
/ 22 марта 2012

Вы должны добавить кнопки в свойство navigationItem вашего rootViewController, а не на панель инструментов контроллера навигации.Что-то вроде:

rootViewController.navigationItem.rightBarButtonItems = barItems;
0 голосов
/ 22 марта 2012

Проверьте документацию , особенно эту часть:

Управление содержимым этой панели инструментов осуществляется через пользовательское представление контроллеры, связанные с этим навигационным контроллером. Для каждого просмотра контроллер на стеке навигации, вы можете назначить пользовательский набор элементы панели инструментов, использующие setToolbarItems: animated: метод UIViewController.

...