2015-01-08 12 views
6

この問題に関する回答はたくさんありましたが、問題に関連していないようです。NSInternalInconsistencyException、理由:NIBをバンドルにロードできませんでした。

ビュー1にはボタンが2つあります。ビュー2にはボタンがあります。

ビュー1つのボタンは私がビュー1のボタンをクリックします。2.

を表示するためのモデルセグエに結びついている、それがビュー2でボタンがどのIBActionに接続されているビュー2.

を開きます火災

[self dismissViewControllerAnimated:YES completion:nil]; 

ビューを閉じ、ディスプレイは再び1を見る - 私は再び表示1上のボタンを押すと今、私は

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle <x/y/z/SomeApp.app> (loaded)' with name 'tvz-Io-ndz-view-rB8-bq-l6j' and directory 'Main.storyboardc'' 
01を得ます

この問題を解決する方法は完全に失われています。助けてください!

編集:私はgotoビューからその画面場合、私は、画像をレンダリングするのWebViewとチェーンの3番目の画面を持っている場合は、デバイスがインターネット

  • を持っていないとき

    • これはのみ発生2アプリがクラッシュすることはありません。

    EDIT 2:

    私も最初から画面を再構築しようとしました。

    私は完全に困惑しています。

    EDIT 3:フルスタックトレース

    2015-01-19 09:10:58.528 SomeApp[37747:2203364] *** Terminating app due to 
    uncaught exception 'NSInternalInconsistencyException', reason: 'Could not 
    load NIB in bundle: 'NSBundle  
    </Users/user/Library/Developer/CoreSimulator/Devices/D23C1B7C-7330- 
    466E-8369-762C6727B19C/data/Containers/Bundle/Application/AE67C3D3-C5AE- 
    4A66-91EC-54D976A4A4FC/SomeApp.app> (loaded)' with name 'tvz-Io-ndz-view- 
    rB8-bq-l6j' and directory 'Main.storyboardc'' 
    
    *** First throw call stack: 
    (
        0 CoreFoundation      0x01f64946 __exceptionPreprocess + 182 
        1 libobjc.A.dylib      0x01beda97 objc_exception_throw + 44 
        2 CoreFoundation      0x01f6486d +[NSException raise:format:] + 141 
        3 UIKit        0x008f8e06 -[UINib instantiateWithOwner:options:] + 1003 
        4 UIKit        0x0071b624 -[UIViewController _loadViewFromNibNamed:bundle:] + 270 
        5 UIKit        0x0071bdbb -[UIViewController loadView] + 295 
        6 UIKit        0x0071bfef -[UIViewController loadViewIfRequired] + 78 
        7 UIKit        0x0071c595 -[UIViewController view] + 35 
        8 UIKit        0x00d8f707 -[_UIFullscreenPresentationController _setPresentedViewController:] + 75 
        9 UIKit        0x006f1a81 -[UIPresentationController initWithPresentedViewController:presentingViewController:] + 113 
        10 UIKit        0x00729a61 -[UIViewController _presentViewController:withAnimationController:completion:] + 2102 
        11 UIKit        0x0072c5d2 __62-[UIViewController presentViewController:animated:completion:]_block_invoke + 345 
        12 UIKit        0x0072c424 -[UIViewController presentViewController:animated:completion:] + 224 
        13 UIKit        0x0072c8ea -[UIViewController presentModalViewController:animated:] + 57 
        14 UIKit        0x00bf448d -[UIStoryboardModalSegue perform] + 271 
        15 UIKit        0x00be1b49 -[UIStoryboardSegueTemplate _perform:] + 217 
        16 UIKit        0x00be1bc5 -[UIStoryboardSegueTemplate perform:] + 116 
        17 UIKit        0x006d4907 -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1490 
        18 UIKit        0x006d4af7 -[UITableView _userSelectRowAtPendingSelectionIndexPath:] + 285 
        19 UIKit        0x006d9df3 __38-[UITableView touchesEnded:withEvent:]_block_invoke + 43 
        20 UIKit        0x005ee0ce ___afterCACommitHandler_block_invoke + 15 
        21 UIKit        0x005ee079 _applyBlockToCFArrayCopiedToStack + 415 
        22 UIKit        0x005ede8e _afterCACommitHandler + 545 
        23 CoreFoundation      0x01e879de __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 30 
        24 CoreFoundation      0x01e87920 __CFRunLoopDoObservers + 400 
        25 CoreFoundation      0x01e7d35a __CFRunLoopRun + 1226 
        26 CoreFoundation      0x01e7cbcb CFRunLoopRunSpecific + 443 
        27 CoreFoundation      0x01e7c9fb CFRunLoopRunInMode + 123 
        28 GraphicsServices     0x043d524f GSEventRunModal + 192 
        29 GraphicsServices     0x043d508c GSEventRun + 104 
        30 UIKit        0x005c48b6 UIApplicationMain + 1526 
        31 SomeApp        0x000e482d main + 141 
        32 libdyld.dylib      0x027e8ac9 start + 1 
    ) 
    libc++abi.dylib: terminating with uncaught exception of type NSException 
    

    ジェームズ

  • +0

    View 2を表示するコードを表示できますか?奇妙なことは何も起こっていないことを確認するだけですか? – Stonz2

    +0

    @ Stonz2手書きのコードを右クリックするとボタンが2番目のビューにドラッグされず、追加のSegue処理コードはありません。 – James

    +0

    view2の 'teardown'コードに何かがありません。あなたは解雇されたが、その後は適切に整理されていないプロセスがあります。おそらく、view2は何かに委譲されており、サイクルを保持していますか?私の経験では、これは最初のview2が適切に解放されていない場合にのみ発生します.. – Jef

    答えて

    0

    あなたがしようとすると例外については、以下のシナリオを確認することができます。

    1)nibファイルはその後、欠落している場合に同じを追加するには、 Xcode

    2)却下する前にIBActionメソッドをチェックしてください。this

    19

    受信しているエラーを引き起こす可能性がある理由はたくさんあります。

    私はいくつかをチェックするものと解決策を列挙から始めましょう:

    1. あなたはXcodeの外であなたのXIBやストーリーボードファイルを名前を変更しましたか?そうであれば、矛盾のある箇所を参照してください。大文字/小文字は、大文字と小文字が区別されるため、ファイルを参照する場所であれば、尊重してください。

    2. Interface Builderに移動し、View1 ViewController> Utilitiesパネル>Identity Inspectorを選択します。​​がViewControllerクラスに対応するかどうかを確認します(.hと.mファイル)。

    3. Info.plistファイルを確認してください。storyboadsを使用している場合、Main storyboard file base nameのようなエントリがあり、Main nib file base nameでない必要があります。もしあなたがnibsを使うなら、その逆も同様です。また、ファイルのベース名が実際のファイルの名前に対応していることを確認してください。

    4. はチェックターゲットのBuild Phases > Copy Bundle ResourcesとあなたのXIBやストーリーボードファイルが追加されていることを確認してください。あなたがプログラムであなたのView1をのViewControllerをインスタンス化し、使用した場合

    5. はXIB(大文字と小文字が区別され、覚えておいてください)タイプミスのためのペン先名を確認ファイル。 また、名前に.xibファイル形式を追加している場合は、使用しないでください。拡張子を削除してください。 UIViewController *controller = [[UIViewController alloc] initWithNibName:@"xibFileName" bundle:nil];

    6. ファイルインスペクターでxibまたはストーリーボードファイルのプロパティを確認し、ファイルがTarget Membership選択パネルのターゲットにリンクされていることを確認してください。

    7. ファイルインスペクタでxibまたはストーリーボードファイルのプロパティを確認し、ファイルLocationRelative to projectまたはRelative to groupに切り替えてみてください。いずれかの方法が違いを生むかどうかを確認してください。

    8. あなたはinitWithCoderでプログラムあなたのビューコントローラを追加している場合、あなたは上から何も自分の状況に適用されない場合は、Xcodeのからファイルを削除することができ

    9. 代わりviewDidLoad方法でそれをインスタンス化する(選択Remove References)、再度プロジェクトにインポートします。

    上記の変更(SHIFT + COMMAND + K)を行った後は、必ずプロジェクトをクリーンにしてください。

    うまくいっていれば教えてください。あなたはXIBにアクセスする前に、クラスのセットアップにバンドルを持っているかもしれ

    +0

    これはその理由の素晴らしいリストです。どのようにあなたがそれを抱きしめたか分かりません...しかし、大変ありがとう上記の#6は私たちのために何をしたのですか? =) – Marchy

    1

    ObjectiveC:

    //Bundle initialisation 
    NSBundle* bundle = [NSBundle bundleForClass:[self class]]; 
    
    //Initialising the nib 
    UIView *nibView = [[bundle loadNibNamed:@"nibFileName" owner:self options:nil] objectAtIndex:0]; 
    
    //Display the ad (this will vary based on your application setup) 
    [[[UIApplication sharedApplication] keyWindow] addSubview:nibView]; 
    
    2

    私はすべての答えの上にしようとしたが、彼らは動作しませんでした。私にとって、解決策はxibをターゲットリソースに含めることでした。行っ

    ステップ:

    • クリックXIBファイルに。
    • オープンアイデンティティインスペクター - >ターゲット会員と2番目のオプションを確認してください(ProjectName_Resource)
    0

    それはあなたがcocoapodsで作業している場合はUITableViewDataSourceまたはUITableViewDelegateが希望のUIViewController

    0

    に実装されていないことも可能です、それをpod updateを実行するのにも役立ちます。私のチームメイトの一人がポッドを変えてしまい、そのエラーが発生したので、ポッドアップデートで修正されました。

    関連する問題