Добавление вкладки «Контроллер» Иконка IPhone - PullRequest
2 голосов
/ 25 августа 2009

Я добавляю viewController к TabBarController. Когда я добавляю ViewController из пользовательского класса и Nib, его значок не отображается на панели вкладок.

Если я инициализирую таким образом, значок не появляется.

viewController = [[FlashCardViewController alloc] initWithNibName:@"FlashCardViewController"  bundle:[NSBundle mainBundle]];

Но создание универсального viewController работает.

viewController = [[UIViewController alloc] initWithNibName:nil  bundle:nil];

Здесь мы добавляем изображение и заголовок.

viewController.title = @"Quiz";
viewController.tabBarItem.image = [UIImage imageNamed:@"magnifying-glass.png"];

Как получить значок, отображаемый при загрузке с NIB?

Ответы [ 2 ]

1 голос
/ 25 августа 2009

Вы можете добавить вызов установщику tabBarItem.image в методе viewDidLoad контроллера нестандартного представления:

@implementation FlashCardViewController
//...
- (void)viewDidLoad {
    [super viewDidLoad];

    self.tabBarItem.image = [UIImage imageNamed:@"magnifying-glass.png"];
}
//...
@end

Редактировать: ОК, так что это не сработало. Попробуйте:

- (void)viewDidLoad {
    [super viewDidLoad];

    UIImage *image = [UIImage imageNamed:@"magnifying-glass.png"];
    self.tabBarItem = [[[UITabBarItem alloc] initWithTitle:@"string"
                                                     image:image
                                                       tag:0] autorelease];
}
0 голосов
/ 26 августа 2009

Почему вы передаете [NSBundle mainbundle] инициализации FlashCardViewController? Обычно вы просто передаете ноль - согласно вашему рабочему примеру ...

...