UI基础-UIView及其子类

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];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值