UIView基本用法

本文介绍了在iOS应用中创建和管理UIView的过程,包括视图的创建、配置、添加及释放所有权等步骤,并展示了如何设置视图的颜色、位置等属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//当应用程序完成加载时触发, 做一些程序加载之后的操作, 比如: 让window可视
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    /**
     *  UIView表示屏幕上的一块矩形区域, 在屏幕上看到的内容都是UIView或UIView的子类, UIView是一个基类,提供了关于视图的展示, 管理, 以及层次关系的基本功能
        视图的使用分四个步骤:
        1 创建视图对象
        2 配置属性比如(backgroundColor修饰背景颜色)
        3 添加到父视图上
        4 释放所有权
     父视图和子视图的关系: 比如视图A和视图B上, 视图B就叫做视图A的父视图, 视图A就叫做视图B的子视图
     牢牢谨记: 一个视图只能有一个父视图, 但是可以有多个子视图
     */
    UIView *blueView = [[UIView alloc] initWithFrame:CGRectMake(110, 100, 100, 100)];
    //更改视图的颜色
    blueView.backgroundColor = [UIColor blueColor];
    //将blueView添加到self.window上
    [self.window addSubview:blueView];
    //当把子视图添加到父视图上之后, 父视图会对子视图retain, 保留一份所有权
    [blueView release];
    
    //创建视图
    UIView *greenView = [[UIView alloc] initWithFrame:CGRectMake(110, 250, 100, 100)];
    //设置视图属性
    greenView.backgroundColor = [UIColor greenColor];
    //添加到父视图
    [self.window addSubview:greenView];
    //释放所有权
    [greenView release];
    
    UIView *grayView = [[UIView alloc] initWithFrame:CGRectMake(110, 400, 100, 100)];
    grayView.backgroundColor = [UIColor grayColor];
    [self.window addSubview:grayView];
    [grayView release];
    
    UIView *leftVIew = [[UIView alloc] initWithFrame:CGRectMake(20, 20, 50, 50)];
    leftVIew.backgroundColor = [UIColor yellowColor];
    [self.window addSubview:leftVIew];
    [leftVIew release];
    
    UIView *rightView = [[UIView alloc] initWithFrame:CGRectMake(250, 20, 50, 50)];
    rightView.backgroundColor = [UIColor yellowColor];
    [self.window addSubview:rightView];
    [rightView release];
    
    UIView *middenView = [[UIView alloc] initWithFrame:CGRectMake(110, 568/2.0 - 50, 100, 100)];
    middenView.backgroundColor = [UIColor orangeColor];
    [self.window addSubview:middenView];//直接添加
    //tag 用于唯一标识一个视图(最好给定100以上)
    middenView.tag = 100;
//    [self.window insertSubview:middenView atIndex:0];
//    self.window insertSubview:middenView aboveSubview:<#(UIView *)#>
    [middenView release];
    
    //通过父视图以及tag值来获取对应的子视图
    [self.window viewWithTag:100];
    
    
    //NSStringFromCGPoint将一个CGPoint类型的结构体变量转为字符串类型
    NSLog(@"middenView.center:%@", NSStringFromCGPoint(middenView.center));
    //视图的frame NSStringFromCGRect将一个CGRect类型的结构体变量转为字符串类型
    NSLog(@"middenView.center:%@", NSStringFromCGRect(middenView.frame));
    //透明度alpha
    middenView.alpha = 0.5;
    //显隐性 hidden
    middenView.hidden = NO;
    //获取视图的父视图
    NSLog(@"middenView.superview:%@",middenView.superview);
    //获取视图的所有的子视图
    //视图是以数组的形式管理子视图的, 数组中的视图的顺序和视图添加的顺序一致
    //后添加的视图若和先前添加的视图有重合的地方会将先添加的视图给覆盖掉
    NSLog(@"self.window.suberview:%@",self.window.subviews);

    
    UIView *boVIew = [[UIView alloc] initWithFrame:CGRectMake(30, 520, 260, 20)];
    boVIew.backgroundColor = [UIColor lightGrayColor];
    [self.window addSubview:boVIew];
    [boVIew release];
    
    
    
    self.window.backgroundColor = [UIColor purpleColor];
    NSLog(@"%@", self.window);
    //让当前window成为主window并且可视
    [self.window makeKeyAndVisible];
    return YES;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值