2011-06-27 9 views
0

を使用して - 以下のコードを使用して:私は現在、同じビューの新しいインスタンスを起動しようとしている、同じビューの新しいインスタンスを産卵UINavigationController

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{  
    InventoryController *inventoryController = [[InventoryController alloc] initWithNibName:@"InventoryView" bundle:nil]; 

    UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:self]; 
    [navigationController pushViewController:inventoryController animated:YES]; 

    [inventoryController release]; 
    [navigationController release]; 
} 

問題は、それが働いていないということです。..

エラーはありません。何もしません。

アイデア?

+1

navigationContollerを保持するものは何もないようです。 – PengOne

答えて

2

@PengOneは正しくありません。あなたはナビゲーションコントローラを作成してからリリースしています。割り当てが解除されるのを防ぐものは何もありません。さらに、ナビゲーションコントローラのビューをウィンドウに追加しておらず、ナビゲーションコントローラをウィンドウのルートビューコントローラとして設定していないので、この特定のナビゲーションスタック内のコントローラによって制御されるビューは表示されません。

これを試してください:Xcodeでナビゲーションベースのプロジェクトを作成してください。コードを追加する必要はありません。提供されているコードを見ることができるようにプロジェクトを作成するだけです。アプリケーションデリゲートにはnavコントローラを格納するためのretainプロパティがあり、navコントローラはウィンドウのルートビューコントローラとして設定されていることがわかります。

+0

申し訳ありませんが、特定のケースでは、私は完全なプロジェクトのために、UITabBarControllerのビューのうちの1つだけは望んでいません。 – xil3

+0

それはNavコントローラを保持するアプリケーションデリゲートである必要はありませんが、* somebody *はそれにぶら下がったり、割り当てが解除されたりします。たとえば、[タブバーコントローラーのコントローラーのアレイに追加する](http://tinyurl.com/3mb7zdn)などの操作を行うことができます。この場合、navコントローラーはアレイによって保持され、アレイコントローラーはタブによって保持されますバーコントローラ。 – Caleb

1

現在のコントローラがすでにUINavigationController階層の一部である場合、あなたは新しいナビゲーションコントローラを作成してはいけません - (それが存在する場合、すべてのUIViewControllerは親UINavigationViewControllerへの参照を持っていることに注意)の代わりに、既存のものを使用します。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{  
    InventoryController *inventoryController = [[InventoryController alloc] initWithNibName:@"InventoryView" bundle:nil]; 

    [self.navigationController pushViewController:inventoryController animated:YES]; 

    [inventoryController release]; 
} 
+0

私は既存のものを持っていません: - 私は私がする必要があるもののために飛行機を作ることができると思ったが、私は何とかそれを保持する必要があると思う。 – xil3

関連する問題