UIButton 基础

创建一个button

注意button只能通过类方法创建,不能使用alloc
该段代码添加在函数- (void)viewDidLoad 中

	//通过类方法创建一个UIbutton
    UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect] ;
    
    //设置按钮的位置
    btn.frame = CGRectMake(100, 100, 100, 100) ;
    
	//设置按钮的文字内容
    //P1:字符串类型,现实到按钮上的文字
    //P2:设置文字显示的状态类型:UIControlStateNormal: 正常状态
    [btn setTitle:@"按钮" forState:UIControlStateNormal] ;
    
    //P2: UIControlStateHighlighted:按下状态
    [btn setTitle:@"按钮按下" forState:UIControlStateHighlighted] ;
    
    //设置背景颜色(蓝色)
    btn.backgroundColor = [UIColor blueColor] ;
    
    //设置按钮显示的颜色
    //P1: 颜色
    //P2: 状态
    [btn setTitleColor: [UIColor redColor ] forState:UIControlStateNormal] ;
    
    //设置按钮颜色
    [btn setTitleColor: [UIColor grayColor] forState:UIControlStateHighlighted] ;
    
	[self.view addSubview:btn] ;

向按钮添加事件函数

添加后的代码为:
同样,该段代码也添加在函数- (void)viewDidLoad 中

	//通过类方法创建一个UIbutton
    UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect] ;
    
    //设置按钮的位置
    btn.frame = CGRectMake(100, 100, 100, 100) ;
    
    //设置按钮的文字内容
    //P1:字符串类型,现实到按钮上的文字
    //P2:设置文字显示的状态类型:UIControlStateNormal: 正常状态
    [btn setTitle:@"按钮" forState:UIControlStateNormal] ;
    
    //P2: UIControlStateHighlighted:按下状态
    [btn setTitle:@"按钮按下" forState:UIControlStateHighlighted] ;
    
    //设置背景颜色
    btn.backgroundColor = [UIColor blueColor] ;
    
    
    //设置按钮显示的颜色
    //P1: 颜色
    //P2: 状态
    [btn setTitleColor: [UIColor redColor ] forState:UIControlStateNormal] ;
    
    //设置按钮颜色
    [btn setTitleColor: [UIColor grayColor] forState:UIControlStateHighlighted] ;
    
    
    //向按钮添加事件函数
    //P1:
    //P2:@selector(press):  函数对象,当按钮满足P3事件类型时, 调用函数
    //P3:UIControlEventTouchDown 表示当按钮被按下
    [btn addTarget: self action: @selector(press) forControlEvents: UIControlEventTouchDown] ;
    
    //P3: UIControlEventTouchUpInside 表示当手指离开屏幕时并且手指的位置在按钮范围内触发事件
    [btn addTarget: self  action: @selector(free) forControlEvents: UIControlEventTouchUpInside] ;
    
    [self.view addSubview:btn] ;
    

并且添加按钮触发函数:

//打印“按钮被按下”
-(void) press{
    NSLog(@"按钮被按下") ;
}
//打印“按钮释放”
-(void) free{
    NSLog(@"按钮释放!") ;
}

创建一个可以显示图片的button,注意,要在- (void)viewDidLoad 函数中添加 [self creatImageBtn] ; 否则无法调用创建图片按钮函数

-(void) creatImageBtn{
    //创建一个可以显示图片的btn
    UIButton* btnImage = [UIButton buttonWithType:UIButtonTypeCustom] ;
    
    btnImage.frame = CGRectMake(100, 300, 200, 400) ;
    
    UIImage* icon01 = [UIImage imageNamed:@"123.jpg"] ;
    
    UIImage* icon02 = [UIImage imageNamed:@"3.jpg"] ;
    
    [btnImage setImage:icon01 forState:UIControlStateNormal] ;
    
    [btnImage setImage:icon02 forState:UIControlStateHighlighted] ;
    
    [self.view addSubview:btnImage] ;
    
}

一个按钮, 一个图片按钮的总代码为:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    [self creatImageBtn] ;
    
    //设置背景颜色为黑色
    //self.view.backgroundColor = [UIColor whiteColor] ;
    
    //通过类方法创建一个UIbutton
    UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect] ;
    
    //设置按钮的位置
    btn.frame = CGRectMake(100, 100, 100, 100) ;
    
    //设置按钮的文字内容
    //P1:字符串类型,现实到按钮上的文字
    //P2:设置文字显示的状态类型:UIControlStateNormal: 正常状态
    [btn setTitle:@"按钮" forState:UIControlStateNormal] ;
    
    //P2: UIControlStateHighlighted:按下状态
    [btn setTitle:@"按钮按下" forState:UIControlStateHighlighted] ;
    
    //设置背景颜色
    btn.backgroundColor = [UIColor blueColor] ;
    
    
    //设置按钮显示的颜色
    //P1: 颜色
    //P2: 状态
    [btn setTitleColor: [UIColor redColor ] forState:UIControlStateNormal] ;
    
    //设置按钮颜色
    [btn setTitleColor: [UIColor grayColor] forState:UIControlStateHighlighted] ;
    
    
    //向按钮添加事件函数
    //P1:
    //P2:@selector(press):  函数对象,当按钮满足P3事件类型时, 调用函数
    //P3:UIControlEventTouchDown 表示当按钮被按下
    [btn addTarget: self action: @selector(press) forControlEvents: UIControlEventTouchDown] ;
    
    //P3: UIControlEventTouchUpInside 表示当手指离开屏幕时并且手指的位置在按钮范围内触发事件
    [btn addTarget: self  action: @selector(free) forControlEvents: UIControlEventTouchUpInside] ;
    
    [self.view addSubview:btn] ;
    
}

-(void) creatImageBtn{
    //创建一个可以显示图片的btn
    UIButton* btnImage = [UIButton buttonWithType:UIButtonTypeCustom] ;
    
    btnImage.frame = CGRectMake(100, 300, 200, 400) ;
    
    UIImage* icon01 = [UIImage imageNamed:@"123.jpg"] ;
    
    UIImage* icon02 = [UIImage imageNamed:@"3.jpg"] ;
    
    [btnImage setImage:icon01 forState:UIControlStateNormal] ;
    
    [btnImage setImage:icon02 forState:UIControlStateHighlighted] ;
    
    [self.view addSubview:btnImage] ;
    
}


-(void) press{
    NSLog(@"按钮被按下") ;
}

-(void) free{
    NSLog(@"按钮释放!") ;
}

效果图:

在这里插入图片描述
按文字按钮效果图:
在这里插入图片描述
按图片按钮效果图:
在这里插入图片描述

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值