0

ApppressによるBeginning iPhone DevelopmentからUINavigationControllerベースのアプリケーションを作成する方法の例をやり直そうとしていました。

次の例外が発生します。

Exception: Pushing a navigation controller is not supported
Exception: [NSException]:Pushing a navigation controller is not supported
ex.name:'NSInvalidArgumentException'
ex.reason:'Pushing a navigation controller is not supported'

ユーザーが既にスタックにあるビューをプッシュしようとすると発生しますが、私の場合はそうではありません。

My_3AppDelegate.h

IBOutlet UINavigationController * navController; 
@property (nonatomic, retain)    UINavigationController * navController;

My_3AppDelegate.m

[window addSubview: navController.view]; 

MainWindow.xibUINavigationControllerコンセントに接続されたウィンドウを追加します。

私のコードの唯一の違いはRootViewController、 のサブクラスではないことですUITableViewController。ちょうどUIViewController2UIbutton秒です。

FirstViewController *fv = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];
fv.navigationItem.title=@"First View Controller";
[self.navigationController pushViewController:fv animated:NO];
[fv release];

そのエラーは、アプリケーションの最初の実行で発生します。これは、ビューが既にスタックに追加されており、準備ができていることを確認します。

非常に単純なチュートリアル アプリケーションに行き詰まってしまい、その理由がわかりません。

何か案が?

4

1 に答える 1

2

スーパークラスを UINavigationCotroller から UIViewController に変更することで、同じ問題を解決しました。

于 2013-04-11T13:17:43.567 に答える