IOS6底部的黑条代替UITabBarController

时间:2014-03-28 10:27:44

标签: ios objective-c uitableview ios6 uitabbarcontroller

我有两个viewController(A,B),当我启动我的应用程序时,我的root是一个viewController A.他在底部有一个UitableView和一个UITabBarController。当我点击我的UitableView时,我会转到我的viewController B。

我的问题是,当我到达我的viewController B时,我的视图底部有一个黑条,好像我的UITabBarController停留,但我不认为是因为我只在IOS 6上有问题。

我不想在我的viewController B中看到一个UITabBarController,我希望有一个UiWebView的简单视图,但她不会在底部。

viewWillAppear的view {B}中,我[self._tabBarControllerArticle.tabBar setHidden:YES];

我的IOS 6/7 Deltas与Delta Y(20或-20)以及我的viewController B中的所有组件。

结果对IOS 7有好处。

我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

单击表格单元格时,调用hideTabBar,如下所示

  - (void)hideTabBar:(UITabBarController *) tabbarcontroller
 {
 [UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];

for(UIView *view in tabbarcontroller.view.subviews)
{
    if([view isKindOfClass:[UITabBar class]])
    {
        [view setFrame:CGRectMake(view.frame.origin.x, 480, view.frame.size.width, view.frame.size.height)];
    } 
    else 
    {
        [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 480)];
    }
}

[UIView commitAnimations];   
}

 - (void)showTabBar:(UITabBarController *) tabbarcontroller
 {       
  [UIView beginAnimations:nil context:NULL];
  [UIView setAnimationDuration:0.5];
for(UIView *view in tabbarcontroller.view.subviews)
{
    NSLog(@"%@", view);

    if([view isKindOfClass:[UITabBar class]])
    {
        [view setFrame:CGRectMake(view.frame.origin.x, 431, view.frame.size.width, view.frame.size.height)];

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

[UIView commitAnimations]; 
}

再次显示再次来到控制器A.