TabBar UITabBarController немного скрыт - PullRequest
0 голосов
/ 19 июня 2011

TabBar моего UITabBarController немного не виден, пожалуйста, вы можете сказать мне, что не так с моим кодом:

LoggedInViewController *lvc = [[[LoggedInViewController alloc]
                               initWithAccount:account] autorelease];
[self presentModalViewController:lvc animated:YES];

- (void)viewDidLoad
{
    self.tabController = [[UITabBarController alloc] init];
    LoggedInFeedNavigationController *navController;
    navController = [[LoggedInFeedNavigationController alloc]
                     initWithAccount:self.account];
    [self.tabController setViewControllers:
        [NSArray arrayWithObject:navController]];
    [self.view addSubview:self.tabController.view];
    [super viewDidLoad];
}

1 Ответ

0 голосов
/ 19 июня 2011

Вы добавляете представление tabController как подпредставление, но вы не указали, где оно должно быть расположено в родительском представлении или как его следует изменять при изменении размера родительского представления. Попробуйте следующее:

- (void)viewDidLoad
{
    [super viewDidLoad]; // see note

    self.tabController = [[UITabBarController alloc] init];
    LoggedInFeedNavigationController *navController;
    navController = [[LoggedInFeedNavigationController alloc]
                      initWithAccount:self.account];
    [self.tabController setViewControllers:
        [NSArray arrayWithObject:navController]];

    UIView *tabView = self.tabController.view;
    [self.view addSubview:tabView];

    tabView.frame = self.view.bounds;
    tabView.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
                                UIViewAutoresizingFlexibleHeight);
}

Примечание: вы не обязаны звонить [super viewDidLoad], но если вы делаете решите позвонить, вы должны позвонить в начало ваш viewDidLoad метод, а не в конце.

...