0

我想将 UIViewController 的视图添加为子视图。但是 self.view 有一个 UITabBarController。我想在标签栏上方显示子视图。所以标签栏隐藏在子视图后面。请提出一些想法。

4

2 回答 2

2

试试这个,如果你想隐藏/显示视图的 UITabBarController:

隐藏标签栏:

 - (void)hideTabBar:(UITabBarController *) tabbarcontroller
 {
     for(UIView *view in tabbarcontroller.view.subviews)
     {
        if([view isKindOfClass:[UITabBar class]])
       {
           [view setFrame:CGRectMake(view.frame.origin.x, (isiPhone5?568: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, isiPhone5?568: 480)];
        }
     }
  }

显示标签栏:

   - (void)showTabBar:(UITabBarController *) tabbarcontroller
     {

         for(UIView *view in tabbarcontroller.view.subviews)
         {
            if([view isKindOfClass:[UITabBar class]])
            {
               [view setFrame:CGRectMake(view.frame.origin.x,  (isiPhone5?519: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,  isiPhone5?519:431)];
            }
         }
      }

可能会有所帮助。

于 2013-11-15T12:02:22.527 回答
1

在你分配和初始化 TabBar 的地方,写下这一行

objectOfTabbar.hidden=YES; 

然后给你的子视图的框架与TabBarController. 这样,您的标签栏将被隐藏并显示视图。

于 2013-11-15T11:52:56.530 回答