3

私はiPhone開発の初心者です。storyboardを使用してナビゲーション バーを使用するアプリを作成しました。私の問題は、ボタンのクリック時にviewAからプログラムでviewBを開いていることですviewAに戻るために、キャンセル ボタンを使用しました。キャンセルボタン(前)をクリックすると、(viewA)が開かれますが、ナビゲーションバーは表示されません。および viewA にはナビゲーション バー コントロールがありますが、 viewBにはありません。

前もって感謝します

ビューA

 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    EditViewController *viewController = (EditViewController *)[storyboard instantiateViewControllerWithIdentifier:@"EditViewController"];

    [self presentViewController:viewController animated:NO completion:NULL];

ビュー B:

- (IBAction)cancelButtonPressed:(id)sender {
    if ( lables != NULL) {

        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        ScannerViewController *viewController = (ScannerViewController *)[storyboard instantiateViewControllerWithIdentifier:@"ScannerViewController"];

        [self presentViewController:viewController animated:NO completion:NULL];

    }
    else{

        [self.navigationController popViewControllerAnimated:YES];
    }
4

5 に答える 5

0

ナビゲーション コントローラーを使用する必要があります。StoryBoard でビュー A、エディター メニュー > 埋め込み > ナビゲーション コントローラーを選択します。

http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/NavigationControllers.html

于 2013-04-23T11:35:47.490 に答える
0

私も同じ問題に直面していました。解決策は、戻るボタンをクリックしてモーダルを選択しないことです。これは、モーダルがビュー全体をカバーしているため、バックスクリーンのナビゲーションコントローラーが表示されないためです。したがって、戻るボタンの接続は行わず、戻るボタンのコードを記述してください。

[self dismissViewControllerAnimated:YES completion:nil];
于 2014-07-03T10:35:24.837 に答える
-1

必要な場合 (例: viewDidAppear メソッド) を使用します。

[self.navigationController setNavigationBarHidden:NO animated:YES];
于 2013-04-23T11:49:02.017 に答える