IOS–之UIWindow(窗口)、UIView(视图)
一、什么是window?
1、window是窗口,每个app都需要借助window将内容展现给⽤用户看。
2、在iOS中,使⽤用UIWindow类来表示窗口,通常一个应⽤用程序只创建一个UIWindow对象。
3、window的主要作⽤用是呈现内容给⽤用户,我们不会对window做太多操作。
如何创建window
1、在创建window的时候需要指定window的大小
2、window的大小(frame)与屏幕的大小(UIScreen)大小一致
实例代码:
self.window=[[UIWindow alloc]initWithFrame:[UIScreen mainScreen]bounds];
二、什么是View?
1、view(视图):代表屏幕上的一个矩形区域。ios中用UIView来表示视图。
2、app中的各种UI控件都属于view。
3、iOS中所有能看到的内容都是view或其子类。
如何创建View
1、开辟空间并初始化视图(初始化时,给出视图的位置和大小)
2、对视图做一些设置
3、将视图添加到window上进行显示
4、释放视图对象
示例代码:
UIView *view=[[UIView alloc]initWithFrame:CGRectMake(100,100,120,100)];
view.backgroundColor=[UIColor blueColor];
[self.window addSubview:view];
[view release];
IOS的坐标系
1、ios提供了用于布局的平面坐标系,左上角为坐标系的原点
2、水平向右:为X的正方向
3、垂直向下:为y的正方向
注意:坐标系不是以像素作为划分依据,而是以点作为划分依据
frame
1、frame是view的重要属性,是我们做视图布局的关键,它决定了视图的大小和位置
2、frame是一个结构体,包含两部分内容:origin和size
3、origin:也是一个结构体,包含两部分内容:x和y
4、size:也是一个结构体,包含两部分内容:width和height
5、frame的origin和size是相对于父视图来说的,CGReactMake()函数可以帮我们快速构造一个CGRect变量
center
1、center(中心点)view的重要属性
2、center是一个结构体,包含两部分内容:x和y
3、center与frame有着密切的联系
center.x=frame.origin.x+frame.size.width/2;
center.y=frame.origin.y+frame.size.width/2;
bounds(边界)
1、bounds(边界)是view的属性,用于定义自己的边界大小及左上角的初始坐标
2、当子视图添加到此视图时,会根据bounds指定原点(0,0)计算frame,而非左上角
frame、center、bounds之间的关系
添加视图
UIView的addSubview:方法可以添加子视图,对于同一个视图的所有子视图来讲,后添加的子视图会把已加载的子视图盖在下面
添加视图的其他方法:
视图的层次
视图的重要属性:
1、hidden:控制视图的显隐
redView.hidden=YES;//隐藏redView
redView.hidden=NO;//显示
2、alpha:控制视图的透明度(子视图也一起透明),取值范围0~1
redView.alpha=0.8;
3、superview:获取本视图的俯视图
UIView *superView=[redView superView];
4、subviews: 获取本视图的所有子视图
NSArray *subviews=[redView subviews];
5、tag:给视图添加标记,被加完标记的视图可以使用viewWithTag:方法取出
redView.tag=100;
UIView *view=[superview viewWithTag:100];
本文详细介绍了iOS中的UIWindow和UIView的概念及其关系。UIWindow是应用程序展示内容的窗口,通常一个应用有一个UIWindow对象。而UIView代表屏幕上的矩形区域,包括各种UI控件。文中讲解了如何创建UIWindow和UIView,以及坐标系、frame、center、bounds等关键属性,还涵盖了视图的添加、层次结构以及重要属性如hidden、alpha、tag等。
、UIView(视图)&spm=1001.2101.3001.5002&articleId=49475729&d=1&t=3&u=81dd7107c3384d0d9530afd703f4bb2f)
385

被折叠的 条评论
为什么被折叠?



