标签:
UI学习第一周
UIView 视图类 :代表屏幕上的一块矩形区域,在屏幕上看到的任何一个元素都是UIView或者UIView的子类
创建UIView的几大要素:
//1.大小 – 宽和高
//2.位置 – 视图左上角点得坐标,x(横坐标), y(纵坐标)
//3.快速创建结构体的变量的方法
CGRect -> CGREcetMake() 包含位置和大小
CGPoint -> CGPointMake() 包含位置 x和y
CGSize -> CGSizeMake() 包含大小 width 和 height
实例:
//1,创建视图对象
UIView *redView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
//2,更改背景颜色
redView.backgroundColor = [UIColor redColor];
(在这个位置可以给视图设置唯一标识 tag
redView.tag = 101; //可以通过tag值取到redView视图)
//3,添加到父视图上 -- window上
[self.window addSubview:redView];
//4,释放所有权 -- 对应alloc操作
[redView release];
UIView视图相关的属性
//通过tag值获取视图
UIView *tempView = [self.window viewWithTag:101];
//打印视图
//打印window和中心视图的所有子视图
NSLog(@”window:%@”, self.window.subviews);
NSLog(@”window:%@”, centerView.subviews);
//打印中间视图和右上角视图的父视图
NSLog(@”center:%@”, centerView.superview);
NSLog(@”leftUp:%@”, leftUpView.superview);
//通过window的subviews获取
UIView *tempView = [self.window.subviews objectAtIndex:1];
//视图操作的API
//运用创建视图方法分别创建红黄蓝绿视图:
//将蓝色添加到黄色视图和红色视图中间
//[self.window insertSubview:blueView belowSubview:yellowView];
//[self.window insertSubview:blueView aboveSubview:redView];
//[self.window insertSubview:blueView atIndex:1];
//该方法将视图添加到subviews数组中最后一个位置
[self.window addSubview:blueView];
[blueView release];
//1.把绿色视图移动到最后面
//[self.window sendSubviewToBack:blueView];
//2.把绿色视图移动到最前面
//[self.window bringSubviewToFront:blueView];
//3.将蓝色视图和红色视图换下位置
//[self.window exchangeSubviewAtIndex:3 withSubviewAtIndex:0];
//4.将蓝色视图移除掉
//[blueView removeFromSuperview];
//管理视图的层级关系:
视图具有的和位置相关的属性
1.frame:既包含大小,也包含位置,而位置是视图区域左上角的点的坐标,相对于父视图坐标原点的距离.
2.center:中心点的位置.
3(难点).bounds:既包含大小,也包含位置,而位置是视图区域左上角的点的坐标,相对于自身视图坐标原点的距离.
改变bounds中x,y.会造成自身视图坐标原点位置发生变化,影响子视图位置.
实例:
//布局思想 -- 创建一个和屏幕等大的内容视图,添加到window上,而所有的子视图都添加到内容视图上.
UIView *containerView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
containerView.backgroundColor = [UIColor yellowColor];
[self.window addSubview:containerView];
[containerView release];
//接下来将所有的子视图都添加到内容视图containerView上
标签:
原文地址:http://www.cnblogs.com/iamfoolish/p/4769807.html