2011-02-02 5 views
2

これはあまりにも簡単な質問ですが、ここでは固執しています。私はUITableViewControllerから継承するクラスを実装しました。このクラスは、Interface Builderではなく、コードで構築している分割ビューのルートコントローラです。問題は、テーブルのaccesoryビューから詳細ビューを表示しようとしていて、インスタンスのnavigationController属性がnilであることです。私は新しいUINavigationControllerをどのようにインスタンス化して自分のコードに詳細なビューを表示できるのか分かりません。任意のヒントが本当にいただければ幸いですInterface BuilderなしでUITableViewController内で使用するUINavigationControllerを作成してください

- (void)tableView:(UITableView *)tableView 
     accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath { 

    PartDetailViewController *partDetailViewController = 
          [[PartDetailViewController alloc] initWithNibName:@"PartDetailView" bundle:[NSBundle mainBundle]]; 

    [self.navigationController pushViewController:partDetailViewController animated:YES]; 
    [partDetailViewController release]; 
} 

は、これは私がaccesoryボタンを使用しようとしている方法です。事前に

おかげで、

フェデリコ

答えて

0

self.navigationControllerがnilの場合は、ナビゲーションコントローラ内でUITableViewControllerインスタンスを「プッシュ」していないことを意味します。

だから私はあなたがUISplitViewControllerとiPadアプリを持っているし、あなたのテーブルを分割ビューの「ルート」ビューコントローラ内でインスタンス化し、その持つ階層のようにされていることを、あなたの説明から、想像することができますUISplitViewController ==>(ルート)==> UITableViewController

。この場合、UINavigationControllerを作成し、UINavigationController内でテーブルビューコントローラをプッシュし、次にこのスキーマに従って分割ビュー "ルート"コントローラをUINavigationControllerに定義します。

UISplitViewController ==>(ルート)==> UINavigationViewController ==> UITableViewController

これはあなたを助けることを願っています。

+0

ありがとうございました。それはまさに私が探していたものでした。 – Federico

+0

私は同じ問題を抱えていますが、それは私はUIViewControllerとUITableViewControllerのInstantを持っています。あらかじめThx – OXXY

0

は、UINavigationControllerを作成UINavigationControllerUITableViewCOntrollerを追加し、分割ビューのビューにUINavigationControllerを追加します。

関連する問題