我有以下代碼時:崩潰設定的UIBarButtonItem
UIFont * applicationBolFontOfSize26=[fontsSuperclass returnApplicationMainFontOfSize:26.0f];
[self.settingsButton setTitleTextAttributes:@{ NSFontAttributeName : applicationBolFontOfSize26 } forState:UIControlStateNormal];
其中字體超類方法的定義爲:與錯誤
+(UIFont *)returnApplicationMainFontOfSize:(CGFloat)floatSize {
return [UIFont fontWithName:@"HelveticaNeue-Regular" size:floatSize];
}
但self.settingButton setTitleText...
崩潰:
* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]'
爲什麼?
好吧,有些東西是零...記錄或斷點您的字體,然後再將其分配給按鈕。 –
是的字體是零,這很奇怪。 – louiskablooie
在沒有複合語句的情況下調試也比較容易,在中間變量中創建屬性。然後檢查每個項目的零。調試技能是編寫軟件的一部分。 – zaph