断言失败

时间:2010-12-17 10:58:08

标签: iphone ipad crash assertion

我正在使用SDK4.2开发一个iPad应用程序。在我的应用程序中触摸任何textField时,我有一个非常奇怪的错误。我第一次触摸时会显示键盘,但是当在对象中完成第二次触摸时,我会获得以下跟踪。 它也出现在带有UIWebView对象的HTML页面中显示的任何TextField中。 有任何想法吗? 我真的很困惑...提前谢谢!

2010-12-17 11:53:11.697 BancoPopular[48914:207] *** Assertion failure in -[UIButtonLabel setTextColor:], /SourceCache/UIKit_Sim/UIKit-1447.6.4/UILabel.m:314
2010-12-17 11:53:11.699 BancoPopular[48914:207] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: color'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x01730be9 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x018855c2 objc_exception_throw + 47
    2   CoreFoundation                      0x016e9628 +[NSException raise:format:arguments:] + 136
    3   Foundation                          0x0013947b -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 116
    4   UIKit                               0x0045d1dc -[UILabel setTextColor:] + 164
    5   UIKit                               0x0052177b -[UIButton layoutSubviews] + 1337
    6   UIKit                               0x005f3420 -[UICalloutBarButton layoutSubviews] + 54
    7   QuartzCore                          0x011a4451 -[CALayer layoutSublayers] + 181
    8   QuartzCore                          0x011a417c CALayerLayoutIfNeeded + 220
    9   QuartzCore                          0x011a4088 -[CALayer layoutIfNeeded] + 111
    10  UIKit                               0x0051f2ff -[UIButton titleLabel] + 81
    11  UIKit                               0x005f81d1 -[UICalloutBarButton setContentScale:] + 141
    12  UIKit                               0x005f6c5d -[UICalloutBar _updateVisibleItems] + 2240
    13  UIKit                               0x005f2970 -[UICalloutBar appear] + 211
    14  UIKit                               0x005eaaa9 -[UITextSelectionView showCommandsWithReplacements:] + 291
    15  Foundation                          0x000bd7f6 __NSFireDelayedPerform + 441
    16  CoreFoundation                      0x01711fe3 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 19
    17  CoreFoundation                      0x01713594 __CFRunLoopDoTimer + 1220
    18  CoreFoundation                      0x0166fcc9 __CFRunLoopRun + 1817
    19  CoreFoundation                      0x0166f240 CFRunLoopRunSpecific + 208
    20  CoreFoundation                      0x0166f161 CFRunLoopRunInMode + 97
    21  GraphicsServices                    0x01e25268 GSEventRunModal + 217
    22  GraphicsServices                    0x01e2532d GSEventRun + 115
    23  UIKit                               0x0034d42e UIApplicationMain + 1160
    24  BancoPopular                        0x0000292e main + 84
    25  BancoPopular                        0x000028d1 start + 53
    26  ???                                 0x00000001 0x0 + 1
)
terminate called after throwing an instance of 'NSException'

2 个答案:

答案 0 :(得分:3)

仔细查看异常是什么。它说“原因:'无效参数不满足:颜色'”,在代码中的某处,你提供了应该是有效颜色的错误参数。显然,您似乎使用带有标签的UIButton并设置其颜色但无效。

答案 1 :(得分:0)

我的猜测是你有一些物体在某个地方消失了,那个物体包含了“颜色”值。

很可能你从某个电话中收到了一个自动发布的值并且没有保留它,所以当用户界面播出时,它变得“噗”。