博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[UIKit学习]02.关于UIButton
阅读量:6242 次
发布时间:2019-06-22

本文共 1519 字,大约阅读时间需要 5 分钟。

 

  • 按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片和文字的位置
  • 按钮也是一种容器,在这一点上跟UIView类似

按钮的三种状态

  • normal(普通状态)
  • 默认情况(Default)
  • 对应的枚举常量:UIControlStateNormal
  • highlighted(高亮状态)
  • 按钮被按下去的时候(手指还未松开)
  • 对应的枚举常量:UIControlStateHighlighted
  • disabled(失效状态,不可用状态)
  • 如果enabled属性为NO,就是处于disable状态,代表按钮不可以被点击
  • 对应的枚举常量:UIControlStateDisabled

*要为按钮设置三种状态都不同的外观,那么按钮的Type要设置为Custom

 

UIButton的常见设置

set

  • - (void)setTitle:(NSString *)title forState:(UIControlState)state;
  • 设置按钮的文字
  • - (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;
  • 设置按钮的文字颜色
  • - (void)setImage:(UIImage *)image forState:(UIControlState)state; 
  • 设置按钮内部的小图片
  • - (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;
  • 设置按钮的背景图片
  • btn.titleLabel.font = [UIFont systemFontOfSize:13];
  • 设置按钮的文字字体(需要拿到按钮内部的label来设置)

get

  • - (NSString *)titleForState:(UIControlState)state; 
  • 获得按钮的文字
  • - (UIColor *)titleColorForState:(UIControlState)state;
  • 获得按钮的文字颜色
  • - (UIImage *)imageForState:(UIControlState)state;
  • 获得按钮内部的小图片
  • - (UIImage *)backgroundImageForState:(UIControlState)state;
  • 获得按钮的背景图片

代码创建

    // 创建按钮

    UIButton *btn = [[UIButton alloc] init];

    // 设置背景图片

    [btn setBackgroundImage:[UIImage imageNamed:image] forState:UIControlStateNormal];

    [btn setBackgroundImage:[UIImage imageNamed:highImage] forState:UIControlStateHighlighted];

    [btn setBackgroundImage:[UIImage imageNamed:disableImage] forState:UIControlStateDisabled];

    // 设置位置和尺寸

    btn.frame = frame;

    // 监听按钮点击

    [btn addTarget:self action:action forControlEvents:UIControlEventTouchUpInside];

 

转载于:https://www.cnblogs.com/zhangjingyangjinjin/p/5226606.html

你可能感兴趣的文章
PHP导入导出Excel方法小结
查看>>
ZOJ 3870 Team Formation 位运算 位异或用与运算做的
查看>>
清除浮动float的方法
查看>>
java学习第十二天
查看>>
1 Kubernetes管理之master和Node
查看>>
M端计算rem方法
查看>>
as3 用StyleSheet css 设置文本样式
查看>>
hdu4612(双连通缩点+树的直径)
查看>>
【转】深入理解 C# 协变和逆变
查看>>
第六次作业
查看>>
UML
查看>>
9.[Java开发之路](6)File类的使用
查看>>
折半插入排序(binary insertion sort)
查看>>
打包常见问题
查看>>
javascript解析json
查看>>
在Ubuntu下编译WebKit源码
查看>>
amazeui 移动开发
查看>>
python2 与python3中最大的区别(编码问题bytes&str
查看>>
HDU 2243 AC自动机+DP+矩阵
查看>>
什么叫脱字符合^
查看>>