1

ステータス バーが非表示になっているアプリケーションがあります。ステータスバーを非表示にするために、次のことを行いました:

  [[UIApplication sharedApplication] setStatusBarHidden:YES];

これはios 6で動作していました.iOS 7で追加しましView controller-based status bar appearance = NOた. また、ナビゲーション コントローラーのサブクラスを作成し、以下を追加しました。

- (BOOL)prefersStatusBarHidden
{
    return YES;
}

すべてがうまく機能していますが、UIImagePicker のステータス バーが表示され、ビューを閉じた後でも非表示になることはありません。関連ビューにもメソッドを追加prefersStatusBarHiddenしましたが、成功しませんでした:(

助けてください。

4

3 に答える 3

3

次のリンクを使用

- (void)imagePickerController:(UIImagePickerController *)aPicker didFinishPickingMediaWithInfo:(NSDictionary *)info {

// for iOS7
    if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {

        [[UIApplication sharedApplication] setStatusBarHidden:YES];
    }

以下は、スタック オーバーフロー自体に関する ios7 のステータス バーの問題に関するリファレンスのリストです。;-)

iOS 7 でビューの境界を越えてステータス バーとナビゲーション バーが表示される

ステータスバーが消えない

iOS 7 でビューの境界を越えてステータス バーが表示される

于 2013-10-11T06:23:01.397 に答える
0

このメソッドは、ステータス バーの問題に使用できます。正常に動作するはずです。

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
        UIView *addStatusBar = [[UIView alloc] init];
        addStatusBar.frame = CGRectMake(0, 0, 320, 20);
        addStatusBar.backgroundColor = [UIColor colorWithRed:0.973 green:0.973 blue:0.973 alpha:1]; //change this to match your navigation bar
        [self.window.rootViewController.view addSubview:addStatusBar];
    }
于 2013-10-11T03:43:18.843 に答える