0

私のビューコントローラは、UITableViewサブクラスであるモーダルビューを開きます。 UITableViewサブクラスにナビゲーションバーがありません。どうすればプログラムで追加できますか?このモーダルビューを閉じるには、キャンセルボタンが必要です。iPhone:tableviewサブクラスにナビゲーションバーを追加

答えて

2

ナビゲーションコントローラーにテーブルビューコントローラーを追加し、ナビゲーションコントローラーをモーダルに表示します。例えば、(これは私が正確なメソッド名のわからないように、すべての擬似コードです):

MyTableViewController *tvc = [[MyTableViewController alloc] init]; 
tvc.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Cancel" target:self action:@selector(dismissModalViewController)]; 
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:tvc]]; 
[self presentModalViewController:navController]; 
+0

ありがとう、それはトリックをした... – Jim

0

ナビゲーションバーと戻るボタンでビューをプッシュし、TableViewコントローラを使用する場合は、NavigationControllerを使用してプッシュするだけではなく、ナビゲーションバーと戻るボタンがデフォルトで表示されます?

+0

Imは私のナビゲーションコントローラとそれをプッシュするには、ないナビゲーションバットは私のテーブルビューサブクラス – Jim

+0

せいかではありません私はUIViewControllerの代わりにUITableviewサブクラスを使用しています – Jim

+0

私の上の人の答えが働く、それは最初のビューコントローラにナビゲーションバーを表示するかどうかによって異なります。あなたが上記のオプションを使用していない場合は、navコントローラをモーダルに押します。両方のビューでバーを使用する場合は、最初に表示されたビューを使用してナビゲーションコントローラを使用し、必要に応じてテーブルビューコントローラを押します。この場合、モーダルではありませんが、モーダルビューコントローラを押すことは、独立したビューを現在のビュー全体に完全にスライドさせることです。 – user1084563

関連する問題