UIView属性

来源:互联网 发布:bl国产网络剧 编辑:程序博客网 时间:2024/06/06 02:01
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    NSLog(@"程序已经完成加载");    //iOS坐标系: x轴, 越往右, 越大; y轴, 越往下, 越大    //iOS应用的能到看到的视图, 都是矩形    //决定一个矩形视图在坐标系的位置, 有四个值(x, y , width, height)    //和数据相关的    //1.CGPoint, 存一个点的位置    CGPoint point = {50, 100};    NSLog(@"%.2lf, %.2lf",point.x, point.y);    CGPoint point1 = CGPointMake(50, 100);    NSLog(@"%@", NSStringFromCGPoint(point1));    //2.CGSize, 结构体, 存大小    CGSize size = CGSizeMake(150, 200);    NSLog(@"%@", NSStringFromCGSize(size));    //3.CGRect, 结构体, 存矩形的位置和大小    CGRect rect = CGRectMake(50, 100, 150, 200);    NSLog(@"%@",NSStringFromCGRect(rect));    //打印x    NSLog(@"%.2lf", rect.origin.x);    //[[UIScreen mainScreen]: 获取手机的主屏幕    //[[UIScreen mainScreen] bounds]: 获取主屏幕的大小    NSLog(@"%@", NSStringFromCGRect([[UIScreen mainScreen] bounds]));    //手机屏幕(pt: point, 点)    //iPhone 1/3G/3Gs/4/4s: 320 * 480    //iPhone 5/5s/5c : 320 * 568    //iPhone 6/6s : 375 * 667    //iPhone 6 Plus/6s Plus : 414 * 736    //普通屛幕(1, 3G, 3Gs): 1pt = 1px    //retina(视网膜)屏幕(4, 4s, 5, 5s, 5c, 6, 6s): 1pt = 2px    //高清屏(6 Plus, 6s Plus): 1pt = 3px    //UIWindow窗口类, 可以看到的都是试图, iOS应用, 至少有一个窗口, 所有的控件必须放到窗口上, 才能显示出来    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];//self.window表示属性    // Override point for customization after application launch.    //UIColor , 颜色类,    UIColor *color1 = [UIColor redColor];    UIColor *color2 = [UIColor colorWithRed:255 / 255 green:120 / 255. blue:3 / 255. alpha:1];//alpha阿尔法值, 0为完全透明, 1为完全    //    [UIColor brownColor]    //随机颜色    UIColor *randomColor = [UIColor colorWithRed:(arc4random() % 256) / 255.  green:(arc4random() % 256) / 255.  blue:(arc4random() % 256) / 255. alpha:1];    self.window.backgroundColor = randomColor;    //成为主窗口并显示    [self.window makeKeyAndVisible];    //UIView, 视图类, 继承于UIResponser    /*     UIView *aView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];     //默认颜色是clear,透明的     aView.backgroundColor = [UIColor yellowColor];     [self.window addSubview:aView];     UIView *aView = [[UIView alloc] initWithFrame:CGRectMake(20, 20, 100, 100)];     UIView *bView = [[UIView alloc] initWithFrame:CGRectMake(375 - 120, 20, 100, 100)];     UIView *cView = [[UIView alloc] initWithFrame:CGRectMake(20, 667 - 120, 100, 100)];     UIView *dView = [[UIView alloc] initWithFrame:CGRectMake(375 - 120, 667 - 120, 100, 100)];     UIView *eView = [[UIView alloc] initWithFrame:CGRectMake(375 / 2 - 50, 667 / 2 - 50, 100, 100)];     aView.backgroundColor = [UIColor yellowColor];     [self.window addSubview:aView];     bView.backgroundColor = [UIColor yellowColor];     [self.window addSubview:bView];     cView.backgroundColor = [UIColor yellowColor];     [self.window addSubview:cView];     dView.backgroundColor = [UIColor yellowColor];     [self.window addSubview:dView];     eView.backgroundColor = [UIColor yellowColor];     eView.layer.cornerRadius = 30;     [self.window addSubview:eView];     //视图创建的过程     //1.开辟内存空间     //2.设置视图的属性(比如背景颜色)     //3.添加到父视图     UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100, 120, 100, 100)];     //背景色, 默认为clearColor     view.backgroundColor = [UIColor yellowColor];     //是否隐藏, 默认为NO     view.hidden = NO;     //不透明度, 默认为1     view.alpha = 0.5;     [self.window addSubview:view];     //视图的层级关系(和继承差不多)     //1.一个视图, 只能有一个父视图, 可以有多个子视图     //2.先添加, 显示在下面; 后添加, 显示在上面     //3.一个视图的frame, 都是基于父视图的坐标系     //4.子视图超出父视图的部分, 是可以显示的, 不能触摸(如果, 不想显示, 可以切掉 clipsToBounds)     UIView *aView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];     aView.backgroundColor = [UIColor redColor];     [self.window addSubview:aView];     UIView *bView = [[UIView alloc] initWithFrame:CGRectMake(20, 20, 1000, 40)];     //超出父视图的部分, 是否切掉     aView.clipsToBounds = YES;     bView.backgroundColor = [UIColor greenColor]; //视图越界, 能看到. 但是不能触摸     [self.window addSubview:bView];     [aView addSubview:bView];//基于父视图的坐标系     //子视图数组     NSLog(@"%@", self.window.subviews);     NSLog(@"%@", aView.subviews);     //父视图     NSLog(@"%@", bView.superview);     NSLog(@"%@", aView.superview);    UIView *aView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];    aView.backgroundColor = [UIColor redColor];    [self.window addSubview:aView];    UIView *bView = [[UIView alloc] initWithFrame:CGRectMake(120, 120, 100, 100)];    bView.backgroundColor = [UIColor greenColor];    [self.window addSubview:bView];    UIView *cView = [[UIView alloc] initWithFrame:CGRectMake(140, 140, 100, 100)];    cView.backgroundColor = [UIColor blueColor];    [self.window addSubview:cView];    UIView *dView = [[UIView alloc] initWithFrame:CGRectMake(130, 130, 100, 100)];    dView.backgroundColor = [UIColor yellowColor];    //在指定位置插入视图, 位置只算子视图, 从0开始//    [self.window insertSubview:0 atIndex:2];    //在某个视图的上面插入一个视图//    [self.window insertSubview:dView aboveSubview:bView];    //在某个视图下面插入一个视图//    [self.window insertSubview:dView belowSubview:cView];    //调整子视图的层次    //最前面//    [self.window bringSubviewToFront:cView];    //最后面//    [self.window sendSubviewToBack:cView];    //交换    [self.window exchangeSubviewAtIndex:2 withSubviewAtIndex:3];    //UIView的属性    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];    //背景颜色    view.backgroundColor = [UIColor yellowColor];    //是否隐藏    view.hidden = NO;    //不透明度    view.alpha = 1;    //父视图//    view. superview;    //子视图数组//    view. subviews    //超出父视图的部分是否切掉    view.clipsToBounds = YES;    [self.window addSubview:view];    //view.frame 假如想单独修改, 那么不能单独修改, 需要整体修改    //1    view.frame = CGRectMake(100, 200, 100, 100);    //2    CGRect rect1 = view.frame;    rect1.origin.y = 200;    view.frame = rect1;    NSLog(@"%@", NSStringFromCGRect(view.frame));    //修改view.center, 他也是一个整体    //1//    view.center = CGPointMake(375 / 2, 667 / 2);    //2, 中心点, 基于父视图坐标系(相对于父类)    view.center = self.window.center;    NSLog(@"%@", NSStringFromCGPoint(view.center));    //view.bounds 边界, 基于自身坐标系, 视图在自身的坐标系中的位置和大小    NSLog(@"%@", NSStringFromCGRect(view.bounds));    view.bounds = CGRectMake(0, 0, 160, 100);//bound只会影响子视图的位置    NSLog(@"%@", NSStringFromCGRect(view.bounds));    //注意: bounds(0, 0, 宽, 高) 和 center(只有x, y 值)是相互不影响的    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];    view.backgroundColor = [UIColor yellowColor];    [self.window addSubview:view];    view.bounds = CGRectMake(100, 100, 200, 200);    UIView *aView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];    aView.backgroundColor = [UIColor blueColor];    [view addSubview:aView];    */
0 0
原创粉丝点击