0

メインメニュー(ViewController)は、Xcode4のストーリーボードに追加したNavigationControllerに埋め込まれています。メニューに新しいビューを表示するボタンがあります。それを表示するために私は使用します:

- (IBAction) display : (id) sender
{
    if(!anotherView) anotherView = [[AnotherView alloc] initWithNibName:@"AnotherView" bundle:nil];
    [self presentModalViewController:anotherView animated:NO];
}

私の他のビューは、そのすべてのオブジェクトと要素とともに正しく表示されます。NavigationControllerのバーを除いて、それは表示されません。なんで ?

アドバイスありがとうございます

4

3 に答える 3

1

viewControllerをモーダルに表示しています。ナビゲーションコントローラーを使用する場合は、ビューをナビゲーションスタックにプッシュする必要があります。

交換

[self presentModalViewController:anotherView animated:NO];

[self.navigationController pushViewController:anotherViewController animated:YES];
于 2012-05-25T10:12:10.330 に答える
1

modallyあなたはおそらくあなたが意味したことをビューに提示しています

[self.navigationController pushViewController:anotherView animated:YES]

もちろん、あなたが本当にやりたいのは、ストーリーボードとストーリーボード以外のフローをこのように不必要に混ぜ合わせて一致させることではなく、ストーリーボードにこれを行わせることです

于 2012-05-25T10:12:30.117 に答える
0

ナビゲーションバーを失うことなく、ビューをモーダルに表示できます。このコードを試してください:

AnotherView *tempAnotherView = [[AnotherView alloc] initWithNibName:@"AnotherView" bundle:nil];
[self setAnotherView:tempAnotherView];
[tempAnotherView release];

UINavigationController *navController = [[[UINavigationController alloc] initWithRootViewController:self.anotherView] autorelease];
[self.navigationController presentModalViewController:navController animated:YES];

それが役に立てば幸い!:)

于 2012-06-04T19:36:19.273 に答える