例如,我想跟踪发送到我的 canPeformAction 的操作,它们太多,无法在每次出现时在调试器中用“悬停”显示。因此,我想跟踪日志并在我的测试周期后对其进行检查。
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"%s: sender=%@", __FUNCTION__, sender, action);
}
例如,我想跟踪发送到我的 canPeformAction 的操作,它们太多,无法在每次出现时在调试器中用“悬停”显示。因此,我想跟踪日志并在我的测试周期后对其进行检查。
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"%s: sender=%@", __FUNCTION__, sender, action);
}
你要
NSLog(@"%s: sender=%@, selector=%s", __FUNCTION__, sender,sel_getName(action));
使用NSStringFromSelector轻松获取 Selector 的可打印名称。
NSStringFromSelector(action)
NSString * NSStringFromSelector ( SEL aSelector );
返回给定选择器的字符串表示形式。
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"Action: %@", NSStringFromSelector(action));
}