//当在一个方法中要访问另外一个方法中定义的局部变量,就把该变量定义为实例变量,或者在多个方法中想访问同一个变量,也要把该变量声明为实例变量.
//创建label
- (void)createLabel
{
/**
* UILabel 是iOS开发中用来显示文字的控件,是UIview的子类,所以具有UIview的所有功能,只不过比UIview多了文字显示的功能.
UILabel 的使用过程和UIview类似,也是分四步:
1.创建对象.
2.配置属性.
3.添加到父视图
4.释放所有权
注意:不同的控件之间只是配置的属性的不同,也就是差异所在,所以学习一个新的控件时,只要配置该控件独有的属性即可
*/
UILabel *aLabel = [[UILabel alloc] initWithFrame:CGRectMake(110, 259, 100, 100)];
aLabel.backgroundColor = [UIColor whiteColor];
//1.label 上显示文字
aLabel.text = @"hello beautiful girl my love boy";
//2.设置label 上文字的大小'
//(1)设置字体样式
//systemFontOfSize 默认使用系统字体, 可以更改大小.
// aLabel.font = [UIFont systemFontOfSize:20];
//(2)设置字号
aLabel.font = [UIFont fontWithName:@"Snell Roundhand" size:20];
// aLabel.font = [UIFont fontWithName:@"Oriya Sangam MN" size:20];
NSLog(@"%@", [UIFont familyNames]);
NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Snell Roundhand"]);
aLabel.textAlignment = NSTextAlignmentCenter;
//3.设置字体颜色
aLabel.textColor = [UIColor blackColor];
//4.设置文本换行,如果对行数不加限制,将值设置为0
aLabel.numberOfLines = 0;
//5.换行的标准(文本截取原则)
aLabel.lineBreakMode = NSLineBreakByTruncatingMiddle;
//6.设置阴影的偏移量
aLabel.shadowOffset = CGSizeMake(1, -6);
//7.设置阴影的颜色
aLabel.shadowColor = [UIColor grayColor];
[_containerView addSubview:aLabel];
[aLabel release];
}
//创建textField
- (void)createTextField
{
//UITextField 是UIControl的子类,UIControl又是UIView的子类,所以也是一个视图,只不过比UIView多了两个功能:(1)文字显示 (2)文本编辑
//1.创建对象
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(30, 40, 200, 30)];
//2.配置属性
textField.backgroundColor = [UIColor whiteColor];
//(1)设置textField边框样式.
textField.borderStyle = UITextBorderStyleRoundedRect;
//(2)设置输入框默认显示的文字,但是不作为文本内容的一部分.
textField.placeholder = @"手机号/邮箱";
textField.text = @"lanou";
textField.textColor = [UIColor redColor];
textField.font = [UIFont fontWithName:@"Cochin" size:20];
textField.textAlignment = NSTextAlignmentCenter;
//(3)设置文本框是否可编辑
textField.enabled = YES;
//(4)设置当开始编辑时,是否清除输入框中的内容
textField.clearsOnBeginEditing = YES;
//(5)设置密码模式,输入框中的内容是否以点的行是显示.
textField.secureTextEntry = YES;
//(6)设置弹出键盘样式
// textField.keyboardType = UIKeyboardTypePhonePad;
//(7)键盘左下角的显示的样式
textField.returnKeyType = UIReturnKeyYahoo;
//(8)代理 用于回收键盘
//代理的使用步骤
//1.设置代理
//2.服从协议
//3.实现协议中的方法.
textField.delegate = self;
//设置inputView
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(50, 60, 200, 30)];
view.backgroundColor = [UIColor orangeColor];
[_containerView addSubview:view];
[view release];
//
// view.inputAccessoryView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 40)];
textField.inputView = view;
//3.添加到父视图
[_containerView addSubview:textField];
//4.释放所有权
[textField release];
}
//创建button
- (void)createButton
{
//UIButton 比UILabel, UITextField多出了一个能让让用户点击并且相应的功能.(点击事件)
//UIButton 也是视图,使用步骤和UILabel类似
UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
//配置属性
btn.frame = CGRectMake(30, 150, 100, 30);
btn.backgroundColor = [UIColor brownColor];
//设置圆角
btn.layer.cornerRadius = 10;
//给button设置文字
[btn setTitle:@"登录" forState:UIControlStateNormal];
//给button设置颜色
[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
//给button添加点击事件
//让target 执行action方法,在ControlEvents事件发生之后.
//click: 后边的参数: 谁调用addTarget:action:方法, 参数就是谁.
//而且参数只能有一个
[btn addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];
[_containerView addSubview:btn];
}
//创建单击事件
- (void)click:(UIButton *)button
{
NSLog(@"%@", button);
NSLog(@"聪雷打成杰了");
}