2012-04-29 10 views
0

テーブルビューを設定しました。メインビューでは、警告メッセージを使用しました。ユーザーが[OK]ボタンをクリックすると、テーブルビューが開きます。UIAlertViewボタンで新しいビューが開きますが、ナビゲーションバーとツールバーが表示されません

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 0) { 
     //do nothing 
    } 
    else if (buttonIndex == 1) { 
     myTableViewController *nextViewController = [[myTableViewController alloc] initWithNibName:nil bundle:nil]; 
     [self presentViewController:nextViewController animated:YES completion:nil]; 
    } 
} 

テーブルビューは表示されますが、一部が欠落しています。上部にはナビゲーションバーがあり、下部にはツールバーがあり、欠落しています。セルのみが表示されます。

他のアプローチからこのテーブルビューに移動すると、正しく表示されるため、何が問題になったのか分かりません。

誰でもお気軽にお問い合わせください。ありがとうございました!

+1

navigationControllerスタックを保持したい場合は、ビューコントローラを押して表示しないでください。 – Lefteris

答えて

1

、その後、あなたは、私はまた、あなたがボタン(「却下」を作成する必要があることに注意しますUINavigationController

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 0) { 
     //do nothing 
    } 
    else if (buttonIndex == 1) { 
     myTableViewController *nextViewController = [[myTableViewController alloc] initWithNibName:nil bundle:nil]; 

     /* BEGIN NEW CODE */ 
     /* Here, you will init the navController with your table controller as the root, this is important. */ 
     UINavigationController *controller = [[UINavigationController alloc] initWithRootViewController:nextViewController]; 
     [controller setModalPresentationStyle:UIModalPresentationFormSheet]; 
     [controller setModalTransitionStyle:UIModalTransitionStyleCoverVertical]; 
     /* END NEW CODE */ 

     /* You will now present "controller" instead of the table controller */ 
     [self presentViewController:controller animated:YES completion:nil]; 
    } 
} 

を作成する必要があります:あなたが呼び出したいですまたはあなたはmyTableViewControllerをこのnavControllerを却下する予定です)。

+0

ありがとうございます!それは本当にうまくいく!ただし、ナビゲーションバーのタイトルは表示されません。 2つは、下のツールバーを表示する方法です。 – ceriseche

+0

次のViewControllerでタイトルを設定する必要があります。また、コード内にペン先をロードしていないので、ツールバーを作成する必要があります。私はあなたがツールバーを含むXIBを持っていると仮定?その場合は、上記のコードでXIBをロードしてください。 – WrightsCS

0

presentViewControllerはナビゲーションスタックにプッシュしませんが、現在のビューの上にモーダルで表示します。あなたはビューを提示している場合

[self.navigationController pushViewController:nextViewController animated:YES]; 
+0

ありがとうございます。それは知っていることはとても良いことです。しかし、私の現在のビューにはナビゲーションコントローラがありません。次のビューだけが行います。私はどうしたらいいですか?もう一度おねがいします! – ceriseche

関連する問題