0

ナビゲーションコントローラーにいくつかのビューが埋め込まれたコアデータベースのプロジェクトがあります。これらのビューの1つに、モーダルビューを開くボタンがあります。問題は、ビューに手動でを追加する必要があっUINavigationBarたことです。これは、テーブルビューでスクロールすることを意味します。この問題を解決する方法は、ビューをナビゲーションコントローラーに埋め込むことです。これを試したところ、モーダルビューを開こうとするとアプリがクラッシュし、次のエラーが発生しました。

 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UINavigationController setManagedObjectContext:]

私のapplicationDidFinishLaunchingWithOptions方法は、ユニバーサルCoreDataアプリの標準です。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
        UISplitViewController *splitViewController = (UISplitViewController *)self.window.rootViewController;
        UINavigationController *navigationController = [splitViewController.viewControllers lastObject];
        splitViewController.delegate = (id)navigationController.topViewController;

        UINavigationController *masterNavigationController= [splitViewController.viewControllers objectAtIndex:0];
        GHiPadMasterViewController *controller = (GHiPadMasterViewController *)masterNavigationController.topViewController;
        controller.managedObjectContext = self.managedObjectContext;
    }
    else {
        UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController;
        GHMasterViewController *controller = (GHMasterViewController *)navigationController.topViewController;
        controller.managedObjectContext = self.managedObjectContext;

    }
    return YES;
}

モーダルビューにナビゲーションコントローラーを使用するにはどうすればよいですか?

また、ストーリーボードを使用していることにも注意してください。

4

0 に答える 0