2

ナビゲーション コントローラー (navC など) があり、タブバー コントローラー (tabC など) を navC にプッシュしました。tabC には、ビュー コントローラー (viewC など) があります。今私の仕事は、タップでviewCをフルスクリーンにすることです。しかし、ビューのサイズを変更しているときに、タブバーが存在する領域が占有されることはなく、タブバーを非表示にするときにタブバーが存在する場所に空白が表示されます。

4

2 に答える 2

1

タップ時で実装

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];

if (appDelegate.navigationController.navigationBar.hidden == NO)
{
  CATransition *animation = [CATransition animation];
  [animation setType:kCATransitionFade];
  [[self.view.window layer] addAnimation:animation forKey:@"layerAnimation"];

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
[appDelegate.navigationController setNavigationBarHidden:YES animated:YES];

[self.tabBarController.tabBar setHidden:YES];
 self.view.frame = CGRectMake(0,0,320,480);

 }
    if (appDelegate.navigationController.navigationBar.hidden == YES)
    {

  CATransition *animation = [CATransition animation];
  [animation setType:kCATransitionFade];
  [[self.view.window layer] addAnimation:animation forKey:@"layerAnimation"];

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES];
[appDelegate.navigationController setNavigationBarHidden:NO animated:YES];
[self.tabBarController.tabBar setHidden:NO];
self.view.frame = CGRectMake(0,0,320,368);
 }   
 }

QuartzCore/QuartzCore.h を追加する必要があります

于 2012-09-10T06:10:11.937 に答える
0

いくつかのコードを入れれば、より正確なヘルプを提供できるかもしれませんがnavigationBarnavigationController. このようにして、navigationControllerそれ自体は完全に隠されますが、すでに行っているように、viewController をプッシュおよびポップするためにアクセスできます。

self.navigationController    = [[UINavigationController alloc] init];
[self.navigationController setNavigationBarHidden:YES animated:NO];

お役に立てれば...

于 2012-09-10T05:51:55.027 に答える