一. UIView (视图)表示屏幕上的一块矩形区域,在屏幕上看到的内容都是UIView或是UIView的子类,UIView是一个基类,提供了关于视图展示,管理,以及层级关系的基本功能
视图的使用分为四大步:
1.创建视图对象
2.配置属性(比如backgroundColor修改背景颜色)
3.添加到父视图上
4.释放所有权
父视图 与 子视图的关系:比如视图A添加到视图B上,视图B叫做视图A的父视图,视图A叫做视图B的子视图.
牢牢谨记:一个视图只能有一个父视图,但是可以有多个子视图
如:
创建视图对象
UIView *blueView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];
更改视图的颜色
blueView.backgroundColor = [UIColor blueColor];
将blueView添加到self.window上
把一个视图添加到父视图上之后,父视图会对子视图retain,保有一份所有权
[self.window addSubview:blueView];
[blueView release];
创建视图对象
UIView *greedView = [[UIView alloc]initWithFrame:CGRectMake(50, 50, 100, 100)];
更改颜色
greedView.backgroundColor = [UIColor greenColor];
添加到父视图上
[self.window addSubview:greedView];
[greedView release];
二. 创建视图对象
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(110, 234, 100,100)];
view.backgroundColor = [UIColor redColor];
直接添加最前面
[self.window addSubview:view];
将子视图插入到数组中,给定数组的下标
[self.window insertSubview:view atIndex:0];
将子视图插入到另外一个视图的前面
[self.window insertSubview:view aboveSubview:blueView];
将子视图插入到另外一个视图的后面
[self.window insertSubview:view belowSubview:blueView];
tag 用于唯一标记一个视图(给定100以上)
view.tag = 100;
通过父视图以及子视图的tag的值,来获取对应的子视图
[self.window viewWithTag:100];
[view release];
NSStringFromCGPoint 将一个CGPoint类型的结构体变量转为字符串类型
view.center = CGPointMake(10, 20);
NSLog(@"%@",NSStringFromCGPoint(view.center));
视图的frame
NSLog(@"%@",NSStringFromCGRect(view.frame));
透明度alpha
view.alpha = 0.8;
显隐性hidden
view.hidden = NO;
获取视图的父视图superview
NSLog(@"%@",view.superview);
获取视图的(所有)子视图 subviews
视图是以数组的形式来管理所有的子视图,数组中视图的顺序和视图添加的顺序一致.
后添加的视图如果和先前添加的视图有重合的地方,就会将先添加的覆盖掉
NSLog(@"%@",self.window.subviews);