2013-11-22 26 views
11

私はBOXからファイルをインポートしています。私はボックスsdk V2を使用しています。それは正常にインポートされますが、インポートすると、次のコントローラで画面をナビゲートする必要があります。私はこのアサーションに失敗しましたvoid _UIPerformResizeOfTextViewForTextContainer

NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:@"CategoryOptionView" 
                 owner:nil 
                options:nil]; 

にクラッシュを持っていますし、これは

無効 _UIPerformResizeOfTextViewForTextContainer(NSLayoutManager *、UIViewの*、NSTextContainer *、NSUInteger)でアサーション失敗()、 /SourceCache/UIFoundation_Simエラーです/UIFoundation-229/UIFoundation/TextSystem/NSLayoutManager_Private.m:1516 2013-11-22 08:04:10.083 PunchList [1019:6a2b] ***キャッチされていない例外 'NSInternalInconsistencyException'のためアプリを終了しています、理由: '実行のみメインスレッドで! '

+0

+1興味深いことに、私はBox SDK v2も使用していますが、View Controllerをプッシュする際に同様の問題があります。私はそれが、Boxが自動リリースプールに何かをラッピングする方法と関係があると思いますか?それが私のために壊れている場所です(BoxAPIOperationで)。 performSelector:withObject:delay:0遅延でVCプッシュをラップすることによって問題を「修正」しました(基本的には実行ループが終了するまで延期)。 :/ –

+0

この質問を投稿してくれてありがとう、私たちは時々怖い人たちのために、Skの質問や時間の欠如(言い訳)など、質問をしていません...質問をしてくれてありがとう、私は解決しました。 –

答えて

34

まあ、例外理由は問題を遠ざけます。メインスレッドでこのコードを実行する必要があります。 dispatch_syncまたはdispatch_asyncを使用してビューの作成とペン先の読み込みを囲み、dispatch_get_main_queue()を使用してメインキューを渡します。

+1

お世話になりました。 –

+0

@NabeelThobani何か他のものが必要な場合は教えてください。 –

+0

@レオ私は同じ問題を抱えていて、その理由を見ましたが、あなたは知っていますか?それはなぜメインスレッドではないのですか?奇妙なことに、シミュレートされていない物理的なデバイスだけで、私はモーダルセグを実行しています。 –

関連する問題