欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

UI基本控件(二):UIButton

程序员文章站 2022-11-08 14:11:52
1.UIButton状态:UIControlStateNormal // 正常状态UIControlStateHighlighted // 高亮状态UIControlStateDisabled // 禁用状态UIControlStateSelected // 选中状态UIControlStateApplication //UIControlStateReserved //......

UIButton——按钮

作用:用户交互的主要控件,有六种类型,其中自定义类型使用最为普遍

属性

title属性:是按钮的文字

titleColor属性:是按钮的颜色

image属性:是按钮显示的图像

提示:如果同时指定了image和title属性,当按钮空间不够时,image优先显示;另外,image属性在按钮中不会变形

backgroundImage属性:是按钮的背景图片,注意,按钮的背景图片会根据按钮的实际大小拉伸,在使用背景图片时,尤其需要注意按钮的大小

backgroundColor属性:按钮的背景颜色属性,仅在自定义类型的按钮有效

使用技巧:通常在指定同一类型的按钮操作时,我们习惯用tag区分按钮,然后统一调用同一个方法

注意:设置按钮属性的同时,需要指定属性应用的状态,通常使用Normal状态,Highlight是按钮长按下的状态

Action:TouchUpInside

1.UIButton状态:

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

2.Uibutton类型:

UIButtonTypeCustom            //自定义类型

 添加图片: UI基本控件(二):UIButton 灰色背景颜色:UI基本控件(二):UIButton

UIButtonTypeRoundedRect       //圆角类型

UI基本控件(二):UIButton

 

UIButtonTypeDetailDisclosure   //细节展示按钮

UI基本控件(二):UIButton

 

UIButtonTypeInfoLight          //浅色背景的信息按钮

UI基本控件(二):UIButton

 

UIButtonTypeInfoDark           //暗色背景的信息按钮

UI基本控件(二):UIButton

 

UIButtonTypeContactAdd         // 添加按钮

UI基本控件(二):UIButton

 

3.UIButton常用属性

给按钮设置文字时,苹果文档说明,不能使用label对象设置文字的颜色或者阴影颜色,相反必须使用setTitleColor:forState: and setTitleShadowColor:forState:这两个方法才能修改这些值。

UI基本控件(二):UIButton

 

设置按钮中其他属性依次类推。。。。

//设置对应状态的标题内容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;

这些事件都是基于触摸、基于值、基于编辑。如下事件会触发

在点击按钮是按钮是凹下去,然后弹起才触发起事件,按钮的状态有: 

  1. UIControlEventTouchDown      // 按下    
  2. UIControlEventTouchDownRepeat  多次按下   
  3. UIControlEventTouchUpInside // 在按及其一定外围内
  4. UIControlEventTouchUpOutside // 外面松  

4.adjustsImageWhenDisabled

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

5.adjustsImageWhenHighlighted

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

6.showsTouchWhenHighlighted

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

7.contentEdgeInsets

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

8.按钮实例

1.有些时候我们想让UIButton的title居左对齐,我们设置 btn.textLabel.textAlignment = UITextAlignmentLeft是没有作用的,

我们需要设置  btn.contentHorizontalAlignment = UIControlContentHorizonAlignmentLeft;

但是问题又出来,此时文字会紧贴到左边框,

我们可以设置  btn.contentEdgeInsets = UIEdgeInsetsMake(0,10, 0, 0);

使文字距离左边框保持10个像素的距离。 

本文地址:https://blog.csdn.net/qq_41431406/article/details/108973754

相关标签: ios小白 uibutton