UIView
UIView 代表一个矩形区域
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(150, 100, 150, 40)];
加个背景颜色
view.backgroundColor = [UIColor cyanColor];
添加到window上显示
实际上添加进一个数组中[self.window addSubview:view];
- 父子视图的关系是相对的
加到谁身上 谁就是父视图
子视图的起始位置 要根据父视图的左上角(0,0)点开始计算坐标
添加子视图注意:
必须把子视图添加到 父视图的范围之内 否则无法交互
- 父子视图的关系是相对的
释放内存空间
[view release];
取出子视图(返回值是数组)
NSArray *subView = self.window.subviews;
取出数组中的元素
UIView *tempView = subView[0];
获取中心点
CGPoint center = view.center; NSLog(@"%@", NSStringFromCGPoint(center));
更改中心点坐标
view.center = CGPointMake(200, 100);
- 更改视图的位置方法
1.更改frame
2.更改中心点
bounds 边界 代表可以控制子视图的坐标系
默认的bounds的起始点 就是从(0,0)开始改变父视图的bounds 相当于改变子视图的坐标系(也就是原点坐标)
父视图是不发生变化的 只是更改子视图的位置view.bounds = CGRectMake(10, 10, 150, 40);
表示子视图向左上角移动(10,10),父视图保持不动
创建视图的步骤:
1.开辟空间 给一个位置
2.给视图设置一些属性(背景颜色)
3.添加视图
4.释放内存
UIView常用方法:
// 添加一个标签(tag值)
aView.tag = 1000;
// 如果UIView 没有给背景颜色 默认是 透明的
aView.backgroundColor = [UIColor cyanColor];
[self.window addSubview:aView];
[aView release];
// 通过tag值 取出视图
// 注意:tag的值 不能给0(因为Window是0)
UIView *tagView = [self.window viewWithTag:1000];
tagView.backgroundColor = [UIColor greenColor];
// 视图属性
// 隐藏视图
// 如果父视图被隐藏 那么父视图所有的子视图也会被隐藏
// aView.hidden = YES;
// 透明属性 默认是1 填0 - 1之间的数
// 如果父视图的透明度发生变化 那么父视图上面所有子视图也会发生变化
aView.alpha = 0.5;
UIView *bView = [[UIView alloc] initWithFrame:CGRectMake(150, 110, 100, 80)];
bView.backgroundColor = [UIColor orangeColor];
[self.window addSubview:bView];
[bView release];
// 把某一个子视图 放到最前面
[self.window bringSubviewToFront:aView];
// 把某一个子视图 放到最后面
[self.window sendSubviewToBack:aView];
// 交换两个子视图的位置
[self.window exchangeSubviewAtIndex:1 withSubviewAtIndex:0];
// 删除视图
[bView removeFromSuperview];
// 取出某一子视图的父视图
// UIView *tempView = bView.superview;
// tempView.backgroundColor = [UIColor magentaColor];
// 取出父视图的所有子视图
// NSArray *sunViews = self.window.subviews;
// 把视图插入到指定位置
// [self.window insertSubview:bView atIndex:0];
// 把一个子视图添加到另一个子视图上面
// [self.window insertSubview:bView aboveSubview:aView];
// 把一个子视图插入到另一个子视图下面
// [self.window insertSubview:bView belowSubview:aView];
UILabel
// 显示文本视图UILabel
// 初始化
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(20, 40, 335, 100)];
label1.backgroundColor = [UIColor cyanColor];
// 添加字
label1.text = @"Application windows are expected to have a root view";
// 多行显示
// 完全显示 -1或者0
label1.numberOfLines = 0;
// 设置断行模式
label1.lineBreakMode = NSLineBreakByTruncatingMiddle;
// 设置字体颜色
label1.textColor = [UIColor purpleColor];
// 设置对齐方式
label1.textAlignment = NSTextAlignmentCenter;
// 设置字体大小
label1.font = [UIFont systemFontOfSize:20];
// 获取系统的所有安装的字体
NSArray *fontArray = [UIFont familyNames];
NSLog(@"%@", fontArray);
// 设置字体大小及字体类型
label1.font = [UIFont fontWithName:@"Helvetica" size:20];
// 设置阴影颜色
label1.shadowColor = [UIColor magentaColor];
// 调整阴影的位置
label1.shadowOffset = CGSizeMake(2, 3);
[self.window addSubview:label1];
[label1 release];