iOS UI学习笔记(一)UIView基础

主要内容:

UI期的基础类  UIView
1.视图的位置和大小的确定,需要在视图初始化的时候(initWithFrame)需要传递一个参数,此参数为结构体(CGRect)其实就是一个矩形,该矩形分为两部分,一个用来确定位置(origin.x&origin.y)一个用来确定大小(size.width&size.height).每一个视图的frame都是以该视图父视图的左上角为(0,0)点。


2.背景颜色的设置:每一个视图及其子类都会有一个属性backgroundColor,参数为UIColor类型。
3.将初始化好的视图呈现在父视图上面:[父视图  addSubview:子视图];   addSubview调用越早,层级越是在最底层。

先上代码:

AppDelegate.m

在这里主要进行了UIView的相关创建和处理

//应用程序加载完毕,在此方法中配置窗口和必要的启动界面
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    
    
    
    //一般情况下只会有一个窗口,UIWindow *
    //初始化窗口,[UIScreen mainScreen].bounds]整个屏幕的大小,初始化的时候,将window的大小设置为整个屏幕。
    self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
    //将背景色设置为透明
    [self.window setBackgroundColor:[UIColor grayColor]];
    //将初始化好的window设置为主window并且显示
    [self.window makeKeyAndVisible];
    //Xcode7之后需要此代码
    [self.window setRootViewController:[[UIViewController alloc]init]];
    //初始化一个视图
    //设定视图的位置和大小 CGRect是一个矩形的设定,在iOS体系中原点,即(0,0)点在屏幕的左上方,横轴为x,纵轴为y
    CGRect frame = CGRectMake(50, 50, 100, 100);
    //初始化一个视图,确定一个view
    UIView *myView = [[UIView alloc]initWithFrame:frame];
    //自ios扁平化以后,所有的视图都为透明的了,为了看到视图,我们给他设置背景颜色
    [myView setBackgroundColor:[UIColor redColor]];
    //将初始化好的视图呈现在window上
    [self.window addSubview:myView];
    
    UIView *myView1 = [[UIView alloc]initWithFrame:CGRectMake(200, 50, 100, 100)];
    [myView1 setBackgroundColor:[UIColor purpleColor]];
    [self.window addSubview:myView1];
    
    //初始化一个视图,添加到myview上面
    UIView *subOfMyView = [[UIView alloc]initWithFrame:CGRectMake(30, 30, 40, 40)];
    [subOfMyView setBackgroundColor:[UIColor purpleColor]];
    [myView addSubview:subOfMyView];
    
    //得到myview1的宽度
    float width = [[self window] frame].size.width;
    NSLog(@"%-.2f",width);
    CGFloat evWidth = width/3;
    
    //将三个视图的颜色放入数组中去
    NSArray *color = [NSArray arrayWithObjects:[UIColor redColor],[UIColor yellowColor],[UIColor greenColor], nil];
    for (int i = 1; i <= 3; i++) {
        UIView *tempView = [[UIView alloc]init];
        [tempView setFrame:CGRectMake((i-1)*evWidth, 150, evWidth, evWidth)];
        [tempView setBackgroundColor:[color objectAtIndex:i-1]];
        [self.window addSubview:tempView];
    }
    return YES;
}

在UI学习之前,首先学习Xcode的相关使用,新建文档:


选择单视图模式,命名并创建如下:


成功后在Xcode中会有如下列表:


由于在Xcode6.0以上的版本默认使用storyboard,所以一开始的时候Xcode自动生成了可视化相关文件,但今天的学习不会用到。

UIView主要在appdelegate中编写,刚开始的代码主要完成了,初始化一个window,大小为整个屏幕。然后在其上添加了若干个view视图从而达到UI初步编程的目的。运行效果如下:


需要注意的是,先插入的视图在下方,后插入的视图在上方(如果有遮盖的情况下)。

问题:在UI视图下,如何进行内存管理?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值