我有一个iPhone应用程序编译和运行罚款在我的笔记本电脑上的模拟器。现在,我尝试在iMac上的Simulator中构建和运行相同的代码,然后启动它并让我单击按钮,但是我断言失败。iPhone SDK:断言失败 - [UILabel setFont:]
这里是什么是在控制台:
*** Assertion failure in -[UILabel setFont:], /SourceCache/UIKit/UIKit-738/UILabel.m:438
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: font != nil'
Stack: (
2493366603,
2432871995,
2493366059,
2459146836,
817183141,
817926218,
837317240,
837317032,
837315376,
837314643,
2492860866,
2492867620,
2492869880,
85304,
85501,
816175835,
816221412,
9096,
8930
)
这里的堆栈跟踪:
#0 0x949dbff4 in ___TERMINATING_DUE_TO_UNCAUGHT_EXCEPTION___
#1 0x9102ae3b in objc_exception_throw
#2 0x94962ad3 in CFRunLoopRunSpecific
#3 0x94962cf8 in CFRunLoopRunInMode
#4 0x00014d38 in GSEventRunModal
#5 0x00014dfd in GSEventRun
#6 0x30a5dadb in -[UIApplication _run]
#7 0x30a68ce4 in UIApplicationMain
#8 0x00002388 in main at main.m:16
我的代码不会对任何setfont程序直接调用:。但是,这将成为程序执行过程中的一部分,第一次可以看到一些按钮。
我已经谷歌搜索。一些有类似问题的人说,当他们编辑NIB,或改变他们的时区或其他奇怪时,这会得到魔术般的修复。
任何想法是什么真正的原因是?
(请没有抱怨保密协议的。)
更新:如果我改变我的一些按键的字体从“TimesNewRomanPS-BoldMT”向“泰晤士报”,然后断言失败不再发生。但为什么我不能使用iPhone上存在的所需字体安装在新机器上,并且可以在Interface Builder中选择?
想知道同样的事情。这刚刚开始发生在我身上......与Helvetica! – lawrence 2009-05-21 08:54:29
它只发生在UIButton,而不是UILabel。 – lawrence 2009-05-21 08:56:29