一、 控件的属性
1. CGRect frame
@property(nonatomic) CGRect frame;
1> 表示控件的位置和尺寸(以父控件的左上角为坐标原点(0,0))
2> 修改这个属性,可以调整控件的位置和尺寸
2. CGPoint center
@property(nonatomic) CGPoint center; // center is center of frame.
1> 表示控件的中点(以父控件的左上角为坐标原点)
2> 修改这个属性,可以调整控件的位置
3. CGRect bounds
1> 表示控件的位置和尺寸(以自己的左上角坐标原点,位置永远是(0,0))
2> 修改这个属性,只能调整控件的尺寸
4. int tag
@property(nonatomic) NSInteger tag; // default is 0
1> 表示控件的标识
2> 通过不同标识可以区分不同的控件
5. CGAffineTransform transform
1> 表示控件的形变状态(旋转角度、缩放比例)
2> 创建CGAffineTransform的函数
* CGAffineTransformIdentity; // 重置形变
* CGAffineTransformMakeScale(CGFloat sx, CGFloat sy); /*仅在初始状态上作缩放,操作结果不累加*/
创建一个x、y方向的缩放比例分别为sx、sy的形变值
* CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy); // 缩放(效果可累加)
在形变值t的基础上,再进行缩放,x、y方向的缩放比例分别为sx、sy,然后返回一个新的形变值
* CGAffineTransformMakeRotation(<#CGFloat angle#>) /*仅在初始状态上作旋转,操作结果不累加*/
创建一个旋转角度为angle的形变值
* CGAffineTransformRotate(CGAffineTransform t, CGFloat angle); // 旋转(效果可累加)
在形变值t的基础上,再进行旋转,旋转角度为angle,然后返回一个新的形变值
二、添加控件到控制器的view
[self.view addSubview:子控件];
三、设置按钮的属性
// 1. 创建按钮
// 1.1 创建
UIButton *btn = [[UIButton alloc] init];
// 1.2 设置按钮的尺寸和位置
btn.frame = CGRectMake(130, 110, 110, 110);
// 1.3 设置按钮的普通状态下的属性(背景图片\文字...)
// 1.3.1 背景图片
UIImage *normal = [UIImage imageNamed:@"小新01.jpg"];
[btn setBackgroundImage:normal forState:UIControlStateNormal];
// 1.3.2 设置文字
[btn setTitle:@"Touch" forState:UIControlStateNormal];
// 1.3.3 设置文字颜色
[btn setTitleColor:[UIColor greenColor] forState:UIControlStateNormal];
// 1.4 设置按钮的高亮状态下的属性(背景图片\文字...)
// 1.4.1 背景图片
UIImage *highlighted = [UIImage imageNamed:@"小新02.jpg"];
[btn setBackgroundImage:highlighted forState:UIControlStateHighlighted];
// 1.4.2 设置文字
[btn setTitle:@"OK" forState:UIControlStateHighlighted];
// 1.4.3 设置文字颜色
[btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
// 设置btn圆角
btn.layer.masksToBounds = YES;
btn.layer.cornerRadius = 10;
// 1.5 监听按钮事件
[btn addTarget:self action:@selector(btnClick) forControlEvents:UIControlEventTouchUpInside];
四、viewDidLoad
- 这是控制器的一个方法
- 当控制器的view创建完毕的时候会调用一次
五、UISlider
- value属性可以获得当前的进度值
- 按钮的value发生改变了,会触发UIControlEventValueChanged事件
六、Plist文件的使用
- 加载一个plist文件的时候,会返回一个plist的根节点对象(Root)
七、NSBundle的使用
- 利用NSBundle可以访问某个资源包的内容
- 如果访问软件中最主要资源包的内容,应该用mainBundle
NSBundle *bundle = [NSBundle mainBundle];
- 利用NSBundle获取文件的全路径
NSString *path = [bundle pathForResource:@"desc" ofType:@"plist"];