一、UIWindow
1.UIWindow和UIView的关系
(1)UIWindow是UIView的一个子类,提供视图的显示区域;
(2)UIWindow继承自UIView,包含应用程序的可视区域。
2.UIWindow的创建
//1.获取屏幕尺寸 UIScreen *screen=[UIScreen mainScreen]; CGRect rect=screen.bounds; //2.创建窗口,并铺满整个屏幕 self.window=[[UIWindow alloc] initWithFrame:rect]; //3.给窗口添加背景色 self.window.backgroundColor=[UIColor colorWithRed:1.0 green:1.0 blue:0.0 alpha:1.0]; // self.window.backgroundColor=[UIColor whiteColor]; //4.显示窗口 [self.window makeKeyAndVisible];
二、iOS坐标系统
1.创建视图View
//创建视图v0,v0作为UIWindow的子视图 UIView *v0=[[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)]; v0.backgroundColor=[UIColor blueColor]; [self.window addSubview:v0]; //创建视图v1,v1作为UIWindow的子视图 UIView *v1=[[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)]; v1.backgroundColor=[UIColor redColor]; [self.window addSubview:v1]; //创建视图v2,v2作为UIWindow的子视图 UIView *v2=[[UIView alloc]initWithFrame:CGRectMake(150, 150, 200, 200)]; v2.backgroundColor=[UIColor greenColor]; [self.window addSubview:v2];
2.frame、bounds、center的关系
frame:表示视图在父视图的坐标系统里的位置和大小。
bounds:表示视图在本身的坐标系统里的位置和大小。
center:表示视图在父视图的坐标系统里的中点位 置。
注:改变其中一个属性会影响其它两个。
v2.frame = CGRectMake(0, 0, 200, 200); // v1.center = CGPointMake(100, 100); // v1.bounds = CGRectMake(0, 0, 200, 200); // v1.frame = CGRectMake(200, 200, 10, 200);
时间: 2024-10-25 14:43:38