iOS开发之UI(二)

一.UILabel

UILabel(标签):显示文本的控件

创建一个UILabel对象并且设置大小位置都为100

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(100, 100, 100, 40)];

设置文本

label.text = @"Hello World";

设置文本颜色

label.textColor = [UIColor redColor];

设置对齐方式

label.textAlignment = NSTextAlignmentCenter;

设置字体

label.font = [UIFont boldSystemFontOfSize:17];

设置行数,如果为0,则显示无限

label.numberOfLines = 0;

设置断行方式

label.lineBreakMode = NSLineBreakByWordWrapping;

设置阴影颜色

label.shadowColor = [UIColor blackColor];

设置阴影偏移量

label.shadowOffset = CGSizeMake(2, 1);

2.UITextField

UITextField(输入框):控制文本输入和显示的控件

与UILabel相比,UILabel主要用于文本显示,UITextField主要用于文本编辑

创建方式与部分属性和UILabel相同,就不在赘述。

设置占位符,即提示文字

textField.placeholder = @"请输入任何内容";


效果图

设置其他属性

textField.enabled = YES;// 是否允许输入
textField.clearsOnBeginEditing = NO;// 是否在开始输入时清空输入框内容
textField.secureTextEntry = NO;// 是否以密文显示
textField.keyboardType = UIKeyboardTypeDefault;// 要输入时弹出的键盘样式
textField.returnKeyType = UIReturnKeyDone;// 键盘右下角return按钮的类型
//textField.inputView 自定义输入视图, 默认为键盘 textField.inputAccessoryView = nil;// 输入视图上方的辅助视图,默认为nil
// 外观控制属性
textField.borderStyle = UITextBorderStyleRoundedRect;
textField.clearButtonMode = UITextFieldViewModeAlways;// 清除按钮模式
//textField.leftView 输入框左边框
//textField.leftViewMode 左视图的显示模式
//textField.rightView 输入框右边框
//textField.rightViewMode 右边框的显示模式
textField.delegate = self;// 设置代理

常用代理方法

// 当textField将要开始编辑的时候
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { return YES; }
// 当textField已经编辑的时候
`- (void)textFieldDidBeginEditing:(UITextField *)textField {

NSLog(@"正在编辑");

}// 当textField即将完成编辑的时候- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
return YES;
}// 当textField已经完成编辑的时候- (void)textFieldDidEndEditing:(UITextField *)textField {
NSLog(@"已经完成编辑");
}// 当点击键盘上return按钮的时候- (BOOL)textFieldShouldReturn:(UITextField *)textField {
NSLog(@"return按钮被点击,回收键盘");
// 辞去第一响应者,回收键盘
[textField resignFirstResponder];
return YES;
}`

3.UIButton

UIButton(按钮):响应用户点击的控件

UIButton与其他控件的创建方式略有不同,使用便利构造器创建,并带一个按钮类型的参数

UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];

切记不要忘记设置UIButton的位置大小

button.frame = CGRectMake(100, 300, 100, 40);

// button 外观控制属性
[button setImage:nil forState:UIControlStateNormal];// 设置指定状态下的前景图片,前景图片会把button覆盖
[button imageForState:UIControlStateNormal];// 获取指定状态下的前景图片
[button setBackgroundImage:nil forState:UIControlStateNormal];// 设置指定状态下的背景图片
[button backgroundImageForState:UIControlStateNormal];// 获取指定状态下的背景图片
[button setTitle:@"有种就点我!" forState:UIControlStateNormal];// 设置指定状态下的按钮标题
[button titleForState:UIControlStateNormal];// 获取指定状态下的按钮标题
[button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];// 设定指定状态下的标题颜色
[button titleColorForState:UIControlStateNormal];// 获取指定状态下的标题颜色
[button setTitleShadowColor:[UIColor yellowColor] forState:UIControlStateNormal];// 设置指定状态下的标题阴影颜色
[button titleShadowColorForState:UIControlStateNormal];// 获取指定状态下的标题阴影颜色
// 为button添加事件
[button addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside];
//[button removeTarget: action: forControlEvents:] 移除按钮的点击事件
[self.view addSubview:button];

其中click为执行的某种方法

4.UIImageView

UIImageView(图片框):显示图片的控件

创建方式与UILabel相似
使用图片制作帧动画

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 400, 64, 64)];
NSMutableArray *imageArr = [[NSMutableArray alloc] initWithCapacity:0];
// 根据下标读取图片,并添加进数组
for (int i = 0; i < 18; i++) {
    UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"flower%d.tiff", i + 1]];
    [imageArr addObject:image];
}
imageView.animationImages = imageArr;// 将动画数组设为获取的图片数组
imageView.animationDuration = 2;// 设置循环时间
imageView.animationRepeatCount = 0;// 设置循环次数,0为无限
[imageView startAnimating];// 开始动画播放
[self.view addSubview:imageView];

注意!如果图片的后缀名为png则不必加后缀,否则一定要加后缀。
imageName后的字符串一定要与图片名字完全相同,不然程序就会崩溃!

你可能感兴趣的:(iOS开发之UI(二))