как скрыть панель вкладок при нажатии вкладки в приложении iphone - PullRequest
0 голосов
/ 26 мая 2011

каждый раз

я делаю приложение с несколькими представлениями, в котором у меня есть 4 вкладки, и у меня есть контроллеры представления на каждой вкладке, на одной вкладке я сгруппировал контроллер представления таблицы, по щелчкуэта вкладка будет переходить в это сгруппированное представление таблицы, все идет хорошо, но последняя строка таблицы скрыта под панелью вкладок, поэтому мне нужно скрыть панель вкладок при входе в этот экран, как я могу это сделать,Может ли кто-нибудь помочь мне

Я использую это в Appdelegate для программного создания вкладок,

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    UINavigationController *localNavigationController;
    tabBarController = [[UITabBarController alloc] init];
    NSMutableArray *localControllersArray = [[NSMutableArray alloc] initWithCapacity:5];

     //add first tab View Controller
    RootViewController *ViewController;
    ViewController = [[RootViewController alloc] initWithTabBar];

    localNavigationController = [[UINavigationController alloc] initWithRootViewController:ViewController];
    [localControllersArray addObject:localNavigationController];
    [localNavigationController release];
    [ViewController release];

     //add second tab View Controller
    StudentDataEntry *GroupViewController;
     GroupViewController = [[StudentDataEntry alloc] initWithTabBar];
    localNavigationController = [[UINavigationController alloc]
                                 initWithRootViewController:GroupViewController];
    [localControllersArray addObject:localNavigationController];
    [localNavigationController release];
    [GroupViewController release];
}

спасибо заранее

Ответы [ 3 ]

0 голосов
/ 26 мая 2011

Попробуйте это

yourviewcontroller.hidesBottomBarWhenPushed=YES;
0 голосов
/ 01 марта 2013

Я надеюсь, что это поможет вам

BOOL hiddenTabBar = NO;

- (void) hidetabbar {




 NSArray *array = self.tabBarController.view.subviews;
NSLog(@"array SubView %@",array);
[UIView animateWithDuration:1.0 delay:0.0f options:UIViewAnimationCurveLinear animations:^(){
    for(UIView *view in self.tabBarController.view.subviews)
    {

        if([view isKindOfClass:[UITabBar class]])
        {

            if (hiddenTabBar) {
                [view setFrame:CGRectMake(view.frame.origin.x, 431, view.frame.size.width, view.frame.size.height)];
            } else {
                [view setFrame:CGRectMake(view.frame.origin.x, 480, view.frame.size.width, view.frame.size.height)];
            }
        } else {
            if (hiddenTabBar) {
                [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 431)];
            } else {
                [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 480)];
            }

        }
    }
} completion:^(BOOL isfinsihed){
     hiddenTabBar = !hiddenTabBar;

}];




}
0 голосов
/ 26 мая 2011

Если ваша последняя строка не видна в вашем представлении, то нет необходимости скрывать панель вкладок, для этого вам нужно настроить высоту представления таблицы в соответствии с этим, панель вкладок составляет 48 пикселей, поэтому минус эта высота 48 пикселей от Высота представления таблицы, а также, если вверху есть панель навигации, то еще на 44 пикселя от высоты она будет видна. А также вы можете установить вставку содержимого для представления таблицы, чтобы сделать его видимым.

...