最近在使用selector时经常思考的问题,
给UIButton 添加点击事件,可以在selector后加“:”将button作为参数传入方法中,
今天用
[NSTimer(rotateAction:)
写了一个方法
#pragma mark – rotateAction
// UIView * view = [controller.view.subviews lastObject];
// view.backgroundColor = [UIColor yellowColor];
}
看起来类似的写法却无法获得self(控制器),我分别打印了一下self和controller结果发现地址不一样,所以肯定不是一个对象,我就在思考是为什么,再仔细看打印结果终于发现问题所在
: 0x7ff64db38a50>
: 0x7ff64d8486d0>
显而易见二者不是同一个类,,所以selector传入的参数是:点击事件的调用者例如:button,slider,progress,nstimer等等
如果说,罗马是一座厚重和凝固的堡垒,