项目中一般exception,都可以通过添加全局断点来断到指定位置。
但这个[NSNull length]定位不到。
通过消息转发解决了这个问题,这里记录一下。
@interface NSNull (safe)
@end
@implementation NSNull (safe)
#if TARGET_IPHONE_SIMULATOR
- (id)forwardingTargetForSelector:(SEL)aSelector {
NSString *string = @"++++++++++++++++++++++";
return string;
}
#endif
@end
当给label.text赋值null时,会进到这个转发。然后界面上就会显示出++++++++++++++++++++++错误赋值了,然后根据界面找到bug位置。