自定义点击方法target-action

// target-action可以使UIView具有点击方法

// 自定义一个继承于UIView的类MyButton

***MyButton.h

//通过MyButton实现button的点击效果
//1.通过自定义的方法,把目标和动作传到类的内部
- (void)addNewTarget:(id)target
              action:(SEL)action;

//Target:目标,button执行哪一个类的方法,对应的目标就是那个类的对象
//action:动作,让button具体做什么事,执行的方法就是对应的动作

//2.通过两条属性,把对应的目标和动作保存起来
@property(nonatomic, assign)id target;
@property(nonatomic, assign)SEL action;

@end
***Mybutton.m***

// 3.实现对应的自定义方法,并且让两个属性来保存对应的目标和动作
- (void)addNewTarget:(id)target
              action:(SEL)action {
    self.target = target;
    self.action = action;
}

// 4.给Button一个触发条件,重写touchBegan方法,只要一触碰touchBegan方法,就会让butotn执行相应的点击方法
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    // 5.类把它的方法交给MyButton来完成
    [self.target performSelector:self.action withObject:self];
}
***ViewController.m***

 // 6.使用自定义的方法
    [myButton addNewTarget:self action:@selector(click:)];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值