ios開発において、どのように各種barを隠しますか?

2912 ワード

転載してからhttp://www.cnblogs.com/lovecode/articles/2234557.html
ステータスバー
[UIApplication sharedApplication].statusBarHidden = YES;
または
// iOS3.2+  
[application setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
 statusBarHdden属性はiOS 2.0+でサポートされています.set Status BarHdden:animed:方法はiOS 3.2でキャンセルされました.set Status BarHdden:withAnimation:を採用しました.
上記の方法は、プログラムがloadingをスキップしたときにのみステータスバーを隠すことができます.起動画面の開始時にステータスバーを隠すには、appのinfo.plistファイルを修正し、UISStatus BarHddenキーを追加します.その値はYESです.
同じように、ステータスバーの色の変化についても、それぞれ二つのところから着手します. set Status BarStyle:UID Status BarStyle BlackOpaque;起動画面後のビューのステータスバーを変更するだけで、起動画面にアプリを適用するときにデフォルトの色を変更するには、info.plistファイルを修正し、UISStatus BarStyleキーを追加します.その値はOpaque black style、Transparent black styleとデフォルトのGray styleがあります.
 
ナビゲートバー
[self.navigationController setNavigationBarHidden:YES];
タブTabBar
方法1:
[self.tabBarController.tabBar setHidden:YES];
この方法の問題:tabBarバーは隠しられていますが、この領域は空白になっていて、他のビューでは使えません.
方法2:navigationController+tabBar Controllerの構造については、pushの次のステージのchildControllerの前にchildControllerのhidesBottomBarWhenPused属性をYESとすることができます.例えば、childControllerの初期化方法でこのことができます.コードは以下の通りです.
1 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
2 {
3 self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
4 if (self) {
5 // Custom initialization.
6 self.hidesBottomBarWhenPushed = YES;
7 }
8 return self;
9 }

方法三:

View Code 
時機
 1 - (void)viewWillAppear:(BOOL)animated 
2 {
3 [self setFullScreen:YES];
4 }
5 - (void)viewWillDisappear:(BOOL)animated
6 {
7 [self setFullScreen:NO];
8 }
9 - (void)setFullScreen:(BOOL)fullScreen
10 {
11 //
12 [UIApplication sharedApplication].statusBarHidden = fullScreen;
13 //
14 [self.navigationController setNavigationBarHidden:fullScreen];
15 // tabBar hidesBottomBarWhenPushed
16 }