iOS UIButton(按钮)

简介: UIButton属性1.UIButton状态:UIControlStateNormal // 正常状态UIControlStateHighlighted // 高亮状态UIControlStateDisabled ...

UIButton属性

1.UIButton状态:

  • UIControlStateNormal // 正常状态
  • UIControlStateHighlighted // 高亮状态
  • UIControlStateDisabled // 禁用状态
  • UIControlStateSelected // 选中状态
  • UIControlStateApplication //
  • UIControlStateReserved // 保留状态

2.Uibutton类型:

  • UIButtonTypeCustom //自定义类型
    添加图片: 灰色背景颜色:
  • UIButtonTypeSystem // 系统
  • UIButtonTypeRoundedRect //圆角类型
  • UIButtonTypeDetailDisclosure //细节展示按钮
  • UIButtonTypeInfoLight //浅色背景的信息按钮
  • UIButtonTypeInfoDark //暗色背景的信息按钮
  • UIButtonTypeContactAdd // 添加按钮

3.UIButton常用属性

给按钮设置文字时,苹果文档说明,不能使用label对象设置文字的颜色或者阴影颜色,相反必须使用setTitleColor:forState: and setTitleShadowColor:forState:这两个方法才能修改这些值。
设置按钮中其他属性依次类推。。。。
//设置对应状态的标题内容default is nil. title is assumed to be single line
- (void)setTitle:(NSString *)title forState:(UIControlState)state;
//设置对应状态的标题颜色
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;
//设置对应状态的标题阴影颜色
- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state;
//设置对应状态的按钮的图片
- (void)setImage:(UIImage *)image forState:(UIControlState)state;
//设置对应状态的按钮背景图片
- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;

添加事件
- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;
这些事件都是基于触摸、基于值、基于编辑。有如下事件会触发。
在点击按钮是按钮是凹下去,然后弹起才触发起事件,按钮的状态有:
UIControlEventTouchDown // 按下
UIControlEventTouchDownRepeat 多次按下
UIControlEventTouchUpInside // 在按钮及其一定外围内松开
UIControlEventTouchUpOutside // 按钮外面松开

4.adjustsImageWhenDisabled

当按钮禁用的情况下,图像的颜色会被画深一点,默认为YES。

5.adjustsImageWhenHighlighted

当按钮高亮的情况下,图像的颜色会被画深一点,默认为YES。

6.showsTouchWhenHighlighted

button.showsTouchWhenHighlighted=YES;点击时的闪光效果会被前景图片遮住中间部分;

7.contentEdgeInsets

设置按钮的内部内容(包含按钮图片和标题)离按钮边缘上下左右的距离。

8.按钮实例

有些时候我们想让UIButton的title居左对齐,我们设置
btn.textLabel.textAlignment = UITextAlignmentLeft
是没有作用的,我们需要设置
btn.contentHorizontalAlignment = UIControlContentHorizonAlignmentLeft;
但是问题又出来,此时文字会紧贴到左边框,我们可以设置
btn.contentEdgeInsets = UIEdgeInsetsMake(0,10, 0, 0);
使文字距离左边框保持10个像素的距离。

目录
相关文章
|
API iOS开发 Perl
ios UIButton点击快捷回调
ios UIButton点击快捷回调
|
API iOS开发 Perl
iOS UIButton图文混排快捷显示
iOS UIButton图文混排快捷显示
iOS UIButton图文混排快捷显示
|
API iOS开发 Perl
iOS UIButton倒计时、指示器、粒子效果
iOS UIButton倒计时、指示器、粒子效果
iOS UIButton倒计时、指示器、粒子效果
|
iOS开发
iOS 之 自定义按钮UIButton
iOS 之 自定义按钮UIButton
276 0
iOS 之 自定义按钮UIButton
|
iOS开发
iOS UIButton解读
iOS UIButton解读
166 0