1

私はユニバーサルアプリに取り組んでいます。iPhone と iPad の両方のシミュレーターと iPhone 4S では問題なく動作しますが、iPad ではクラッシュします。これは iPad の分割ビューであり、クラッシュするのは特定のビューを開いたときだけです。一部のビューは正常に動作し、問題はありませんが、マスター ビューで特定の行を選択して詳細ビューに新しいビューを表示するとクラッシュするビューもあります。問題のビューは、iPad シミュレーターで実行すると問題なく開きます。何か案は?

マスター ビューで行を選択するときに、問題のあるビューの 1 つを詳細ビューに表示する方法を次に示します。このビューに検索バーがあり、検索バーは表示されますが、マップ ビューには表示されません。繰り返しますが、iPad シミュレーターではすべて正常に動作します。

else if (indexPath.row == 8)
    {
        RSFMipad *rsfm = [[RSFMipad alloc]initWithNibName:nil bundle:nil];
        NSMutableArray *details = [self.splitViewController.viewControllers mutableCopy];

        UINavigationController *detailNav = [[UINavigationController alloc]initWithRootViewController:rsfm];

        [details replaceObjectAtIndex:1 withObject:detailNav];

        KFBAppDelegate *appDelegate = (KFBAppDelegate *)[[UIApplication sharedApplication]delegate];
        appDelegate.splitViewController.viewControllers = details;
        appDelegate.window.rootViewController = self.splitViewController;
        appDelegate.splitViewController.delegate = rsfm;
        [appDelegate.splitViewController viewWillAppear:YES];
    }

そして、マスタービューの別の行から別のものをロードする別の場所があります。これはすぐに詳細ビューにデータを入力するのではなく、マスター ビューに新しいテーブル ビューをロードします。これも iPad ではクラッシュしますが、シミュレーターではクラッシュしません。

else if (indexPath.row == 6)
    {
        MemberBenefitsipad *benefits = [[MemberBenefitsipad alloc] initWithNibName:@"MemberBenefitsipad" bundle:[NSBundle  mainBundle]];
        [self.navigationController pushViewController:benefits animated:YES];
    }

ログに表示されるエラー エラーは次のとおりです。

2013-06-12 14:36:54.267 KFBNewsroom[12125:907] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </var/mobile/Applications/ED63F1DA-31C8-4FC1-81D7-A3DCE3186C98/KFBNewsroom.app> (loaded)' with name 'MemberBenefitsipad''

編集:私は問題を解決しました。xib ファイルをバンドル リソースに配置する必要がありました。

4

1 に答える 1