8

大規模な調査の後、ほぼ2日間のグーグル、スタックオーバーフローなど...

私の問題はこれです:私はメインViewControllerからViewControllerを次のように提示しています:

UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:VController];
navigation.transitioningDelegate = self;
navigation.modalPresentationStyle = UIModalPresentationCustom;

[self presentViewController:navigation
                   animated:YES
                 completion:nil];

iPhoneユーザーが通話中、または自分の電話をホットスポットとして使用している場合は常に、ステータスバーが拡大され、モーダリーに提示されたVCが一番下に押し出されますが、原点は(0;0)に設定されています問題は、ユーザーが通話中に通話を終了したときです彼はアプリケーション ステータス バーのサイズを通常のサイズに変更していますが、モーダル VC は上に移動しませんでした。

ここに画像の説明を入力

この通知のおかげで、コードで発生したときにこれについて知っていました。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statuBarChange:) name:UIApplicationDidChangeStatusBarFrameNotification object:nil];

最悪なのは、フレームが正しく、原点がまだ (0,0) であることです。

提示されたモーダル vc を refres する方法はありますか? 却下せずにもう一度提示しますか?

4

2 に答える 2