0

作業中の iOS アプリでは、モーダルとして別のビュー コントローラーを表示するビュー コントローラーがあります。次のようなものです。

-(void)didTapOnStartButton {
    MyViewController *myView = [[MyViewController alloc] init];
    [self presentViewController:myView animated:YES completion:nil];
}

そして、View Controller は Navigation Controller をインスタンス化し、その上に別の View Controller を配置します...次のようなものです。

@interface MyViewControler()
@property (nonatomic, strong) UINavigationController *childNav;
@end

@implementation MyViewControler
-(void)viewDidLoad {
    OtherViewController *otherController = [[OtherViewController alloc] init];
    self.childNav = [[UINavigationController alloc] initWithRootViewController:otherController];
    [self.view addSubview:childNav.view];
    childNav.view.frame = self.view.frame;
}

...これにより、提示されたView Controllerに(必要に応じて)ナビゲーションバーが表示されますが、高さが間違っています。私はフレームで多くの実験を行い、Y 原点を -22px オフセットしようとしましたが、OtherViewController はテーブル ビュー コントローラーであり、そのコンテンツは画面から -22px 離れてしまいます (ナビゲーション バーで覆われています)。そのため、なぜこれが起こっているのか、どのように修正するのかはよくわかりません。

どんな助けでも大歓迎です。

4

0 に答える 0