UI-第二讲:基础控件
UI-第二讲:基础控件
* UILabel
* UITextField
* UIButton
* UIImageview
一 UILabel
* UILabel(标签): 是文本显示控件, 是UIView的子类,作为子类一半是为了扩充父类的功能UILabel扩展文字显示功能,UILabel是能显示文字的视图
* 创建步骤:
1. 开辟空间并初始化(如果本类有初始化方法,则使用自己的初始化方法,否则使用父类的)
2. 设置文本控制相关的属性
3. 添加到父视图上,用以显示
4. 释放所有权(只是做了引用计数-1)
5. 例如:
UILabel*userNameLabel = [[UILabel alloc]initWithFrame:CGRectMake(30 ,100,100,30)];
[userNameLabel release];
(注意: containerView 已经添加到根视图上)
6. UILabel 属性设置:
text : 要显示的文本内容
textColor : 文本内容的颜色
textAlignment : 文本对齐方式
font : 文本字体
numberOfLine : 行数
lineBreakMode : 断行模式
shadowColor : 阴影颜色
shadowOffset ; 阴影大小
二 UITextfield
* UITextField(输入框): 是控制文本输入和显示的控件.允许用户编辑文字(输入)
* 创建方法:
1. 开辟空间初始化
2. 设置文本显示,输入等相关属性
3. 添加到父视图上,用以显示
4. 释放对象所有权
5. 例如:
UITextField *userNameTextField = [[UITextField alloc]initWithFrame:CGRectMake(100,100,100,100)];
userNameTextField.borderStyle = UITextBorderStyleRoundedRect;
userNameTextField.placeholder = @“手机号/邮箱”;
[containerView addSubView:userNameTextField];
[userNameTextField release];
6. UITextField 文本显示属性
text : 要显示的文本内容
textColor ; 文本内容颜色
textAlignment : 文本的对齐方式(水平方向)
font : 文本文字
placeholder : 占位字符串(没有任何输入时,给出的提示字符串)
7. UITextField 输入控制属性
enabled : 是否允许输入
clearsOnBeginEditing : 是否开始输入的时候清空输入框内容
secureTextEntry : 是否文字以圆点格式显示
keyboardType : 弹出键盘的类型(枚举值)
inputView : 自定义输入视图(默认是键盘)
inputAccessoryView : 输入视图上方的副主视图(默认nil)
8. UITextField 外观控制属性
borderStyle : 边框样式(枚举值)
clearButtonMode : 清除按钮模式(枚举值)
leftView : 输入框左视图
leftViewMode : 左视图的显示模式
rightView ; 输入框右视图
rightViewMode : 右视图的显示模式
9. UITextField 常用代理方式
当textField将要开始编辑的时候告诉委托人
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
当textField已经编辑的时候告诉委托人
-(void)textFieldDidBeginEditing:(UITextField *)textField
当textField将要完成编辑的时候告诉委托⼈
-(BOOL)textFieldShouldEditing:(UITextField *)textField
当textField已经完成编辑的时候告诉委托⼈
-(void)textFieldDidEndEditing:(UITextField *)textFIeld
当点击键盘上回车按键时候告诉委托⼈
-(BOOL)textFieldShouldReturn:(UITextField *)textField
注意: 委托人即的delegate
三 UIButton
* UIButton侧重于处理用户交互事件
* 创建方法:
1、创建button对象(如果本类有初始化方法,则使用⾃己的初始化方法;否则使用⽗类的)。
2、设置按钮相关的属性
3、为按钮添加点击事件
4、添加按钮到⽗视图上,⽤以显示
5、按钮⽆需释放(⼀般情况创建UIButton都使用⾃己的便利构造器方法,无需释放对象的所有权)
* 例如:
UIButton*loginButton = [UIButton buttonWithType:UIButtonTypeSystem];
loginButton.frame = CGRectMake(30,200,60.30);
[loginButton setTitle:@“登陆” forState:UIControlStateNormal];
[loginButton addTarget: self action: @selector(login:) forControlEvents: UIControlEventTouchUpInside];
[containerView addSubView: loginButton];
* UIButton 外观控制属性
setImage: forState: 设置指定状态下的前景图⽚片
imageForState: 获取指定状态下的前景图⽚片
setBackgroundImage: forState: 设置指定状态下的背景图⽚片
backgroundImageForState: 获取指定状态下的背景图⽚片
setTitle:forState:设置指定状态下的标题
titleForState获取指定状态下的标题
setTitleColor:forState:设置指定状态下的标题颜⾊
titleColorForState:获取指定状态下的标题颜⾊
setTitleShadowColor:forState设置指定状态下的标题阴影颜色
titleShadowColorForState获取指定状态下的标题阴影颜色
* UIButton 添加事件
addTarget:action:forControlEvents
为按钮添加事件,指定按钮点击之后,执行target的action⽅法
removeTarget:action:forControlEvents:移除按钮的点击事件
四 UIImageView
* UIImageView用于显示图片的类
* UIImageView 的创建例如:
NSString *path =[[NSBundle mainBundle] pathForResource:@"1"ofType:@"jpg"];
UIImage *image = [UIImageimageWithContentsOfFile:path];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
imageView.frame= CGRectMake(100, 100, 100, 100);
[self.viewaddSubview:imageView];
* UIImageView 的动态图(实现动画)
animationImages 设置一组动态图片
animationDuration 设置播放一组动态图片的时间
animationRepeatCount 设置重复次数
startAnimating 开始动画
stopAnimating 结束动画