UIButton的运用

UIButton的运用

本节知识点:

  1. UIButton的基本用法
  2. UIButton的代码创建

1. UIButton的基本用法

  • 按钮既能显示文字,又能显示图片
  • 可以改变位置
  • type属性

    • 知识点:Detail Disclosure/info Light/info Dark长一样(iOS7以前不一样,扁平化以后都一样,残留的东西)
  • 自定义按钮

    • type自动改成了custom
  • 按钮的状态

    • 高亮状态:改变文字和图片、背景图片(区别系统自带效果)
  • 拖线打印,引出disable Enable的属性变为NO

    • 设置disable状态下的文字
    • 改变文字
    • 通过代码改变按钮的状态

2. UIButton的代码创建

  • 代码创建

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
    //等价 UIButton *btn = [[UIButton alloc] init];
  • 创建一个按钮

    • 图片、背景图片、标题、标题颜色和设置尺寸
  • 监听按钮点击

    • 只要按钮触发了UIControlEventTouchUpInside事件,就会调用self对象的buttonClick方法
    [btn addTarget:self action:@selector(buttonClick) forCOntrolEvents:UIControlEventTouchUpInside];
  • 按钮、lable、UIImageView的区别

    • UIButton

      1. 既能显示文字,又能显示图片(能显示2张图片,背景图片、内容图片)
      2. 长按高亮的时候可以切换图片\文字
      3. 直接通过addTarget…方法监听点击
    • UIImageView

      能显示图片,不能直接通过addTarget…方法监听点击

    • UILabel

      能显示文字,不能直接通过addTarget…方法监听点击

  • 调用带参数的方法

    //谁调用参数传的就是谁,这里btn调用所以buttonClick:(参数){}传的就是btn  
    [btn addTarget:self action:@selector(buttonClick:) forCOntrolEvents:UIControlEventTouchUpInside]; 
  • 示例

    // 1. 创建按钮
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    //    UIButton *button = [[UIButton alloc]init];// 和上面一行代码等价
    
    //    注意:按钮创建好之后,按钮的类型是不可以被修改
    //    button.buttonType = UIButtonTypeCustom ; // 错误写法,系统会报错
    
    // 2. 设置位置尺寸
    button.frame = CGRectMake(100, 200, 200, 50);
    
    // 3. 设置文字
    // 3.1 常态的文字
    [button setTitle:@"我是按钮" forState:UIControlStateNormal];
    // 3.2 高亮状态的文字
    [button setTitle:@"我是高亮按钮" forState:UIControlStateHighlighted];
    
    // 4. 设置字体颜色
    // 4.1 常态的字体颜色
    [button setTitleColor:[UIColor greenColor] forState:UIControlStateNormal];
    // 4.2 高亮状态的字体颜色
    [button setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
    
    // 4. 设置图片
    // 4.1 常态下的图片
    [button setImage:[UIImage imageNamed:@"like"] forState:UIControlStateNormal];
    // 4.2 高亮下的图片
    [button setImage:[UIImage imageNamed:@"like_pressed"] forState:UIControlStateHighlighted];
    
    // 5. 设置背景图片
    // 5.1 常态下的背景图
    [button setBackgroundImage:[UIImage imageNamed:@"buttongreen"] forState:UIControlStateNormal];
    // 5.2 高亮下的背景图
    [button setBackgroundImage:[UIImage imageNamed:@"buttongreen_hightlighted"] forState:UIControlStateHighlighted];
    
    // 6. 设置按钮点击状态, 默认就是YES ,NO 状态是不可点击
    button.enabled = YES;
    
    // 7. 将按钮添加入控制器view中
    [self.view addSubview:button];
    
    // 8. 监听按钮点击事件
    [button addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值