最近在使用selector时经常思考的问题,
给UIButton 添加点击事件,可以在selector后加“:”将button作为参数传入方法中,
今天用
[ NSTimer scheduledTimerWithTimeInterval : 1 target : self selector : @selector (rotateAction:) userInfo : nil repeats : NO ];
写了一个方法
#pragma mark - rotateAction
- ( void )rotateAction:( ViewController *)controller{
// UIView * view = [controller.view.subviews lastObject];
NSLog ( @"%@" ,controller);
// view.backgroundColor = [UIColor yellowColor];
}
看起来类似的写法却无法获得self(控制器),我分别打印了一下self和controller结果发现地址不一样,所以肯定不是一个对象,我就在思考是为什么,再仔细看打印结果终于发现问题所在
2015-06-21 15:35:22.806 test 仿射变换 [10698:1998925] <ViewController: 0x7ff64db38a50>
2015-06-21 15:35:23.807 test 仿射变换 [10698:1998925] <__NSCFTimer: 0x7ff64d8486d0>
原文:http://blog.csdn.net/zx6268476/article/details/46582273
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!