标签:
//系统window创建出来(并且给window一个全屏的大小)
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
//让window成为主窗口的视图
[self.window makeKeyAndVisible];
UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(100 , 100 , 275 , 100)];
view1.backgroundColor = [UIColor redColor];
// NSLog(@"%@" , [[UIScreen mainScreen] bounds]);
[self.window addSubview:view1];
[view1 release];
UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(100 , 210 , 275 , 100)];
view2.backgroundColor = [UIColor yellowColor];
[self.window addSubview:view2];
[view2 release];
UIView *contentView = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
[self.window addSubview:contentView];
contentView.backgroundColor = [UIColor whiteColor];
[contentView release];
[self.window release];
//创建一个红色的view 贴到contentView
UIView *redView = [[UIView alloc] initWithFrame:CGRectMake(50 , 100 , 160 , 200)];
redView.backgroundColor = [UIColor redColor];
[contentView addSubview:redView];
[redView release];
//创建一个蓝色view
UIView *blueView = [[UIView alloc] initWithFrame:CGRectMake(70 , 80 , 90 , 50)];
blueView.backgroundColor = [UIColor blueColor];
//对一个视图修改透明度(取值范围0.0~1.0)
blueView.alpha = 0.8;
[contentView addSubview:blueView];
[blueView release];
UIView *greenView = [[UIView alloc] initWithFrame:CGRectMake(160 , 140 , 80 , 80)];
greenView.backgroundColor = [UIColor greenColor];
[contentView addSubview:greenView];
[greenView release];
UIView *yellowView =[[UIView alloc] initWithFrame:CGRectMake(110 , 10 , 100 , 90)];
yellowView.backgroundColor = [UIColor yellowColor];
[contentView addSubview:yellowView];
[yellowView release];
//修改图层中某一个view的颜色
((UIView *)[[contentView subviews] objectAtIndex:0]).backgroundColor = [UIColor orangeColor];
((UIView *)[[contentView subviews] objectAtIndex:2]).backgroundColor = [UIColor grayColor];
UIView *blackView = [[UIView alloc] initWithFrame:CGRectMake(120 , 120, 100, 200)];
//在某一个view的上面插入一个view
//在某一个view的下面插入一个view
//在某一个位置插入一个view(父视图)
blackView.backgroundColor = [UIColor blackColor];
[contentView insertSubview:blackView atIndex:2];
[blackView release];
//把view移到最前面
[contentView bringSubviewToFront:blackView];
//把view移到最后面
[contentView sendSubviewToBack:yellowView];
//交换两个view
[contentView exchangeSubviewAtIndex:2 withSubviewAtIndex:4];
//子视图从父视图中删除(只有子类操作)
[blackView removeFromSuperview];
//frame
// frame 可以超出父视图的边界范围
// frame 起始位置坐标是针对自己父视图的起始位置坐标
// frame 父视图frame改变,子视图frame不改变,但是子视图永远是根据父视图来确定位置的
UIView *redView1 = [[UIView alloc] initWithFrame:CGRectMake(100 , 100 , 100 , 100)];
redView1.backgroundColor = [UIColor redColor];
[contentView addSubview:redView1];
//bounds的修改,对本身和父视图不会产生偏移,但是会对bounds自己的子视图产生位置的偏移
redView1.bounds = CGRectMake(10 , 10 , 100 , 100);
//对一个view添加tag值,就是对这个view做了标记
[redView1 release];
UIView *blueView1 = [[UIView alloc] initWithFrame:CGRectMake(0 , 0 , 50 , 50)];
blueView1.backgroundColor = [UIColor blueColor];
blueView1.tag = 188;
[redView1 addSubview:blueView1];
//隐藏
blueView1.hidden = NO;
//通过子view修改父视图
blueView1.superview.backgroundColor = [UIColor orangeColor];
[blueView1 release];
UIView *yellowView1 = [[UIView alloc] initWithFrame:CGRectMake(50 , 50 , 60 , 60)];
yellowView1.backgroundColor = [UIColor yellowColor];
[redView1 addSubview:yellowView];
yellowView1.tag = 199;
[redView1 viewWithTag:188].backgroundColor = [UIColor blackColor];
[redView1 viewWithTag:188].alpha = 0.5;
[yellowView1 release];
//一个视图的中心点要比他的frame到x,y更牛逼,当center与frame发生冲突,frame要迁就center
redView.center = CGPointMake(50 , 50);
NSLog(@"%f , %f" , redView.center.x , redView.center.y);
NSLog(@"%f , %f" , redView.frame.origin.x , redView.frame.origin.y);
NSLog(@"%.2f , %.2f , %.2f , %.2f" , redView.bounds.origin.x , redView.bounds.origin.y , redView.bounds.size.width , redView.bounds.size.height);
NSArray *array = [contentView subviews];
NSLog(@"%@" , array);
标签:
原文地址:http://www.cnblogs.com/fengkuangIT/p/4520430.html