UI基本控件(四):UIImageView、UILabel、UIControl

一、UIImageView

图像视图

作用:在一个区域内,显示图像。

注意:UIImage是一个二进制的图像数据,而UIImageView是用来显示图像数据的区域

属性

image属性:用于设置在图像视图中显示的图片

    要从bundle加载图像,可以使用[UIImage imageNamed:]方法。

UIImageView本身可以做序列帧动画,要使用序列帧动画,我们需要指定三个属性:

  1. animationsImages:序列帧图像数组
  2. animationDuration:一组序列帧图片播放完成需要的时间
  3. animationRepeatCount:序列帧动画重复的次数,默认为0,循环播放

设置完UIImageView的动画属性之后,需要使用startAnimation方法启动动画,如果要停止动画,可以使用stopAnimation方法。

另外,可以使用isAnimating属性,判断当前是否正在播放动画

Action:无

1.Image 设置图片,默认显示

 UIImageView *_imageView = [[UIImageView alloc]init];

_imageView.image = [UIImage imageNamed:@"me.png"];

 

2.highlightedImage 设置高亮状态下显示的图片

_imageView.highlightedImage = [UIImage imageNamed:@"other.png"];

3.animationImages 设置序列帧动画的图片数组

 [_imageView setAnimationImages:[NSArray array]];

4.highlightedAnimationImages 设置高亮状态下序列帧动画的图片数组

[_imageView setHighlightedAnimationImages:[NSArray array]];

 

5.animationDuration 设置序列帧动画播放的时常

[_imageView setAnimationDuration:0.3f];

6.animationRepeatCount 设置序列帧动画播放的次数

[_imageView setAnimationRepeatCount:2];

7.userInteractionEnabled 设置是否允许用户交互,默认不允许用户交互

[_imageView setUserInteractionEnabled:YES];

8.highlighted 设置是否为高亮状态,默认为普通状态

_imageView.highlightedImage = [UIImage imageNamed:@"other.png"];

[_imageView setHighlighted:YES];

 

注意的是在highlighted状态下设置的图片与序列帧动画要显示,必须同时设置UIImageView的状态为highlighted

二、UILabel属性

作用:显示文字

属性

text属性:是label的文字

alignment属性:对齐方式

lines属性:如果为0,不限制行数,但是Label需要有足够大的空间显示内容

Action:无

1.text:设置标签显示文本。 

2.attributedText:设置标签属性文本。 

Ios代码 

NSString *text = @"first";  

NSMutableAttributedString *textLabelStr = [[NSMutableAttributedString alloc] initWithString:text];  

[textLabelStr setAttributes:@{
    NSForegroundColorAttributeName : [UIColor lightGrayColor],   
               NSFontAttributeName : [UIFont systemFontOfSize:17]
} range:NSMakeRange(11, 10)];

label.attributedText = textLabelStr;  

3.font:设置标签文本字体。

默认是系统自带字体,大小为17。

label.font = [UIFont systemFontOfSize:17]

label.font = [UIFont fontWithName:@"Arial" size:16];  
label.textColor = [UIColor blueColor];

4.textAlignment:设置标签文本齐方式。 

label.textAlignment = NSTextAlignmentCenter;  

5.lineBreakMode:设置标签文字示方式,

这个属性使用于label中文本的换行和截短。首先numberofLines必须设置为0,才有效果。

label.lineBreakMode = NSLineBreakByCharWrapping;  以字符为显示单位显示,后面部分省略不显示。  

label.lineBreakMode = NSLineBreakByClipping;  剪切与文本宽度相同的内容长度,后半部分被删除。  

label.lineBreakMode = NSLineBreakByTruncatingHead;  前面部分文字以……方式省略,显示尾部文字内容。  

label.lineBreakMode = NSLineBreakByTruncatingMiddle;  中间的内容以……方式省略,显示头尾的文字内容。  

label.lineBreakMode = NSLineBreakByTruncatingTail;  结尾部分的内容以……方式省略,显示头的文字内容。  

label.lineBreakMode = NSLineBreakByWordWrapping;  以单词为显示单位显示,后面部分省略不显示。  

示例:

label.numberOfLines = 0

label.lineBreakMode = NSLineBreakByTruncatingMiddle;

实现效果:

 

三、UIControl

1.UIControlEventTouchDown

单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。

2.UIControlEventTouchDownRepeat

多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。

3.UIControlEventTouchDragInside

当一次触摸在控件窗口内拖动时。

4.UIControlEventTouchDragOutside

当一次触摸在控件窗口之外拖动时。

5.UIControlEventTouchDragEnter

当一次触摸从控件窗口之外拖动到内部时。

6.UIControlEventTouchDragExit

当一次触摸从控件窗口内部拖动到外部时。

7.UIControlEventTouchUpInside

所有在控件之内触摸抬起事件。

8.UIControlEventTouchUpOutside

所有在控件之外触摸抬起事件(点触必须开始与控件内部才会发送通知)。

9.UIControlEventTouchCancel

所有触摸取消事件,即一次触摸因为放上了太多手指而被取消,或者被上锁或者电话呼叫打断。

10.UIControlEventTouchChanged

当控件的值发生改变时,发送通知。用于滑块、分段控件、以及其他取值的控件。你可以配置滑块控件何时发送通知,在滑块被放下时发送,或者在被拖动时发送。

11.UIControlEventEditingDidBegin

当文本控件中开始编辑时发送通知。

12.UIControlEventEditingChanged

当文本控件中的文本被改变时发送通知。

13.UIControlEventEditingDidEnd

当文本控件中编辑结束时发送通知。

14.UIControlEventEditingDidOnExit

当文本控件内通过按下回车键(或等价行为)结束编辑时,发送通知。

15.UIControlEventAlltouchEvents

通知所有触摸事件。

16.UIControlEventAllEditingEvents

通知所有关于文本编辑的事件。

17.UIControlEventAllEvents

通知所有事件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值