控件的属性
一, 控件的属性
1.CGRect frame
1> 表示控件的位置和尺寸 (以父控件的左上角为坐标原点(0, 0))
2> 修改这个属性, 可以调整控件的位置和尺寸
例子:
CGRect frame = 控件.frame;
2.CGPoint center
1> 表示控件的中点(以父控件的左上角为坐标原点)
2> 修改这个属性, 可以调整控件的位置
3.CGRect bounds
1> 表示控件的位置和尺寸 (以自己的左上角位坐标原点, 位置永远是(0, 0))
2> 修改这个属性, 只能调整控件的尺寸
4.int tag
1> 表示控件的标识
2> 通过不同标识可以区分不同的控件
5.CGAffineTransform transform
1> 表示控件的形变状态 (旋转角度, 缩放比例)
2> 创建CGAfiineTransform的函数
6.初始化控件的所有形变属性.
1> 子控件.transform = CGAffineTransformIdentity;
7.把控件变成动画缓慢移动.
//动画准备开始
1> [UIView beginAnimations:nil context:nil];
//限制动画在规定的时间里走完
2> [UIView setAnimationDuration:1.0f];
//实现方法.
3> block();
//运行动画.
4> [UIView commitAnimations];
* CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)
创建一个x, y方向的缩放比例分别为sx, sy的变形值
* CGAffineTransformMakeRotation(CGFloat angle)
创建一个旋转角度为angle的形变值
例子:
_btn.transform = CGAffineTransformRotate(_btn.transform, M_PI_2 * - 1);
* CGAffineTransformScale(CGAffineTransform t, CGFloat angele)
在形变值t的基础上, 在进行旋转, 旋转角度为angle, 然后返回一个心的变形值
例子:
CGFloat scale = [sender tag] == 7? 1.2: 0.8;
_btn.transform = CGAffineTransformScale(_btn.transform, scale, scale);
二, 添加控件到控制器的view
//self.view(父控件)
[self.view addSubview:子控件];
三, 设置按钮的属性
// 1.创建按钮
// 1.1创建
UIButton *btn = [[UIButton alloc]init];
//1.2设置按钮的尺寸和位置
btn.frame = CGRectMake(0, 0, 100, 100);
// 1.3设置按钮普通状态下的属性
// 1.3.1设置背景图片
UIImage *normal = [UIImage imageNamed:@"btn_01.png"];
[btn setBackroundImage:normal forState:UIControlStateNormal];
//1.3.2设置文字
[btn setTitle:@"点我啊" forState:UIControlStateNormal];
//1.3.3设置文字颜色
[btn setTitleColor:[UIColor greenColor] forState:UICOntrolStateNormal];
//1.4设置按钮高亮状态下的属性
//1.4.1设置背景图
UIImage *high = [UIImage imageNamed:@"btn_02.png"];
[btn setBackgrondImage:high forState:UICOntrolStateHighlighted];
//1.4.2设置文字
[btn setTitle:@"摸我干嘛" forState:UIControlStateHighlighted];
//1.4.3设置文字颜色
[btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
//1.5监听按钮点击
[btn addTarget:self action:@selector(btnClick) forContolEvents:UIControlEventTouchUpInside];
四, viewDidLoad
1.这是控制器的一个方法
2.当控制的view创建完毕的时候会调用一次
五, UISlider
1.value属性可以获得当前的进度值
2.按钮的value发生改变了, 会出发UIControlEventValueChanged事件
六, Plist文件的使用
1.加载一个plist文件的时候, 会返回一个plist的根节点对象(Root), 和使用归档文件类似
七, NSBundle的使用
1. 利用NSBundle可以访问某个资源包的内容
2. 如果访问软件中最主要的资源包的内容, 应该用mainBundle
例子:
NSBundle *bundle = [NSBundle mainBundle];
3. 利用NSBundle获得文件的全路径
例子:
NSString *path = [bundle pathForResource:@"descs" ofType@"plist"];