2012-04-05 21 views
1

I持ってこのメッセージに、クラッシュされたアプリ:キャッチされない例外により 'CALayerInvalidGeometry' 理由にIOSのCALayerInvalidGeometry

アプリを終了: 'CALayerの位置がNaNを含有する:[2.74665e-34ナン]'ここでは、より詳細な例外メッセージ

CALayer position contains NaN: [2.74665e-34 nan] 
2012-04-05 15:48:00.185 Infectious[28198:fb03] (
    0 CoreFoundation      0x0226803e __exceptionPreprocess + 206 
    1 libobjc.A.dylib      0x02820cd6 objc_exception_throw + 44 
    2 CoreFoundation      0x02210a48 +[NSException raise:format:arguments:] + 136 
    3 CoreFoundation      0x022109b9 +[NSException raise:format:] + 57 
    4 QuartzCore       0x00df3c0d _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 155 
    5 QuartzCore       0x00de9f55 -[CALayer setPosition:] + 68 
    6 QuartzCore       0x00de9a0a -[CALayer setFrame:] + 675 
    7 UIKit        0x00efbfb8 -[UIView(Geometry) setFrame:] + 198 
    8 UIKit        0x010071a1 -[UILabel setFrame:] + 233 
    9 Infectious       0x00010e10 -[SusceptibilityHistoryController buildHistogram:] + 9648 
    10 Infectious       0x0000db7e -[SusceptibilityHistoryController viewDidLoad] + 1742 
    11 UIKit        0x00f8fa1e -[UIViewController view] + 184 
    12 UIKit        0x00f8fd11 -[UIViewController contentScrollView] + 36 
    13 UIKit        0x00fa18fd -[UINavigationController _computeAndApplyScrollContentInsetDeltaForViewController:] + 36 
    14 UIKit        0x00fa1aef -[UINavigationController _layoutViewController:] + 43 
    15 UIKit        0x00fa1dbb -[UINavigationController _startTransition:fromViewController:toViewController:] + 303 
    16 UIKit        0x00fa285f -[UINavigationController _startDeferredTransitionIfNeeded] + 288 
    17 UIKit        0x00fa2e06 -[UINavigationController pushViewController:transition:forceImmediate:] + 989 
    18 UIKit        0x00fa2a24 -[UINavigationController pushViewController:animated:] + 62 
    19 Infectious       0x0000851d -[RecentSusceptibilityController tableView:didSelectRowAtIndexPath:] + 269 
    20 UIKit        0x00f595c5 -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1164 
    21 UIKit        0x00f597fa -[UITableView _userSelectRowAtPendingSelectionIndexPath:] + 201 
    22 Foundation       0x017ee85d __NSFireDelayedPerform + 389 
    23 CoreFoundation      0x0223c936 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 22 
    24 CoreFoundation      0x0223c3d7 __CFRunLoopDoTimer + 551 
    25 CoreFoundation      0x0219f790 __CFRunLoopRun + 1888 
    26 CoreFoundation      0x0219ed84 CFRunLoopRunSpecific + 212 
    27 CoreFoundation      0x0219ec9b CFRunLoopRunInMode + 123 
    28 GraphicsServices     0x0315a7d8 GSEventRunModal + 190 
    29 GraphicsServices     0x0315a88a GSEventRun + 103 
    30 UIKit        0x00ec8626 UIApplicationMain + 1163 
    31 Infectious       0x0001131b main + 187 
    32 Infectious       0x00002365 start + 53 

私は何のためになるはずですか?

これはゼロで除算されている可能性がありますか?

このクラッシュの容疑者には他に何がありますか?

ありがとうございました!

答えて

2

問題は、これらの機能の間にある:

8 UIKit  -[UILabel setFrame:] + 233 
9 Infectious -[SusceptibilityHistoryController buildHistogram:] + 9648 

あなたはlabel.frame = ...を呼び出し、そしておそらく何らかの形で値を計算し、結果はあなたが正しく示唆したように、「非数」を意味し、NaNのされています、これはゼロ除算演算の結果である可能性があります。他の多くの理由で表示されることがあります。

"buildHistogram:"という関数を実行し、 "setFrame"または ".frame ="の呼び出しを見つけ、計算された位置がNaNになる方法を見つけます。関係する部門がある場合、おそらくゼロによる除算になります。