2012-01-20 30 views
1

私は普遍的なiOSアプリケーションを構築しています。私はiPhoneのステータスバーを非表示にしたいが、iPadのステータスバーを表示したい。どのようにこれを達成するのですか? info.plistの "Status bar is first hidden"プロパティを "YES"に設定すると、iPhoneとiPadの両方に隠れてしまいます。iPhoneではステータスバーが非表示になっていますが、iPadでは表示されません

答えて

8

AppDelegateクラスの- (BOOL)application:didFinishLaunchingWithOptions:メソッドに次のコードを追加します。

if((void *)UI_USER_INTERFACE_IDIOM() != NULL && UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
{ 
    //the device is iPad 
    //no need of this anyhow since it is not hidden by default 
    [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone]; 
} 
else 
{ 
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade]; 
}  
関連する問題