##DAY1 UI、frame、center、bounds、UIVIew

##DAY1 UI、frame、center、bounds、UIVIew

#pragma mark ———————UI———————————

UI的本意是用户界面,是英文User和 Interface的缩写,从字面上看是用户与界面两个部分组成,但实际上还包括用户与界面之间的交互关系

让窗口成为应用程序的主窗口(唯一的窗口),并且可见:[self.window makeKeyAndVisible];

所有的控件都要添加到最上一层的view上才可以显示。

#pragma mark ———————frame、center、bounds———————————

frame、center、bounds:

1)frame的x和y可以改变本视图的位置;

2)center的x和y是视图根据frame的x和y计算得来的,所以center的x和y也可以改变本视图的位置;

3)bounds的x和y与子视图有关,与本视图无关,一个视图bounds的默认值为(0,0,宽,高);{和屏幕大一样 [UIScreen mainScreen] bounds];}

4)frame的width和height与bounds的这两个属性是一样的,都可以改变本视图的大小;

view.center这里是点语法,center.x是C语言中的访问结构体的方法

中心点不变,向四周放大:

UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)] autorelease];

view.bounds = CGRectMake(0, 0, 250, 250);

把view放到屏幕中心位置:view.center = self.window.center;

#pragma mark ———————UIView———————————

UIView的重要属性:

alpha:透明度

tag:标记

superView:父视图

subViews:子视图(是一个数组)

所以添加到视图上相当于添加到集合,retain一次,引用计数+1

从视图上移除相当于从集合中移除,release一次,引用计数-1

UIView的重要方法:

addSubView:

insertSubView:atIndex:

insertSubView:aboveSubview:

insertSubView:belowSubview:

bringSubviewToFront: 移动到最前面

sendSubviewToBack: 移动到最后面

exchangeSubviewAtIndex:withSubviewAtIndex: 交换两个指定索 引位置的子视图

removeFromSuperview 把子视图从父视图上移除

原文地址:https://www.cnblogs.com/chongyu/p/5192409.html