通过UIView来模拟 实现 Button的点击效果

首先建立根视图

在根视图上实现以下功能:
通过MyButton 实现 button的点击效果
首先建立一个类:MyButton这个类

1.在MyButton.h文件中写一个自定义的方法,把目标和对应的动作传过来

原代码:

-(void)addNewTarget:(id)target Action:(SEL)action;
 target :目标 ,button 执行哪一个类的方法,对应的目标就是那个类的对象
 action:动作 ,让button具体做什么事,执行的方法就是对相应的动作
2.在MyButton.h文件中低昂一两条属性,把对应的目标和动作保存起来

原代码:

@property(nonatomic, assign)id target;
@property(nonatomic ,assign)SEL action;
3.实现自定义的方法,储存目标和动作(在MyButton.m文件中)

原代码:

-(void)addNewTarget:(id)target Action:(SEL)action{
    _action=action;
    _target=target;
}
4.点击的触发条件 (在MyButton.m文件中)

-(void)touchesBegan:(NSSet )touches withEvent:(UIEvent )event{
}

5.让myButton来完成委托人的任务,从而实现点击效果(点击方法中实现)
[self.target performSelectorInBackground:self.action withObject:self];
6.在根视图控制器中 建立一个MyButton

原代码:

 MyButton *button =[[MyButton alloc] initWithFrame:CGRectMake(100, 100, 150, 40)];
 button.layer.cornerRadius=10;
    button.layer.borderWidth =1;
    button.tag =1000;
    [self.view addSubview:button];
    [button release];
7.使用自定义方法

原代码:

[button addNewTarget:self Action:@selector(click:)];
8.实现方法

原代码:

-(void)click:(MyButton *)button{
    NSLog(@"实现点击效果");

注意:要引入头文件 ,在appDelegate.m文件中引入根视图控制器头文件;在根视图控制器的.m文件中引入MyButton的头文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值