UIView是UI的基类
创建UIView前首先大概了解一下几个概念:
(当我们创建UIView,设置一个view的frame时使用CGRectMake()函数快速构造一个view的大小,便会出现下面的代码提示:
UIView *view = [[UIView alloc]initWithFrame:CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>)];
)
frame 是一个结构体,包含2部分内容:origin和size
origin 是一个结构体,包含2部分内容:x和y
size 是一个结构体,包含2部分内容:width和height
CGRectMake()函数可以快速构造一个CGRect变量
创建UIView UIView *view = [[UIView alloc]initWithFrame:CGRectMake(50, 50, 200, 200)];
设置bounds:view.bounds = CGRectMake(50, 50, 300, 300);
视图管理
(1) 将一个视图放在最上面:bringSubviewToFront:
(2) 根据位置将两个视图交换:exchangeSubviewAtIndex: withSubviewAtIndex:2
(3) 将一个视图放在最下面:sendSubviewToBack:
(4) 将一个视图移除:removeFromSuperview
UIView的属性设置
(1) 背景颜色:view.backgroundColor = [UIColor blueColor];
(2) 隐藏视图:view.hidden = YES;
(3) 透明度:view.alpha = 0.3;
(4) 父视图:view.superview.backgroundColor = [UIColor cyanColor];
(5) 子视图:NSArray *subViewArray = view.subviews;需要用一个数组将子 视图放在里面
(6) 标记:view.tag = 101;
(7) 使用tag的值取出view: UIView *v1 = [_window viewWithTag:101]; (前提:tag为101的视图 是添加在_window上面的)
设备屏幕大小:
3GS 3.5寸 320*480 @1x
4/4s 3.5寸 320*480 @2x (640*960)
5/5c/5s 4.0寸 3208568 @2x (640*1136)
6 4.7寸 375*667 @2x (750*1344)
6Plus 5.5寸 414*736 @3x 1242*2208
这里需要注意的是如果都是3.5寸屏 但是如果是视网膜屏的话 使用的图片时 应该要使用640*960的
一般做法是在程序中有一张1.png的图片时,还需要一张1@2x.png的图片 程序会自动判断是不是Retina屏程序 自动选择使用 就不需要布两次局了
在程序中,可以打印设备屏幕大小(需要选择模拟器)
NSLog(@"w:%f h:%f",[[UIScreen mainScreen] bounds].size.width,[[UIScreen mainScreen] bounds].size.height);