IOS-UILabel使用

作为IOS里面最简单和最常用的一个控件,掌握好对应的知识点是非常重要的。

下面我们就总结一下IOS里面UILabel所对应的属性。

- (void) createUI {
    // 定义并且创建一个UILabel对象
    // UILabel是可以显示在屏幕上,并且可以显示文字的一种UI视图
    UILabel* label = [[UILabel alloc] init];
    
    // 显示文字的赋值
    label.text = @"Hello World!,My age is 25.";
    
    // 设定label的显示位置
    label.frame = CGRectMake(100, 100, 160, 100);
    
    // 设置背景颜色
    label.backgroundColor = [UIColor grayColor];
    
    // 设置label文字的大小,使用系统默认的字体,大小为12
    label.font = [UIFont systemFontOfSize:18];
    
    // 设置label文字的颜色
    label.textColor = [UIColor whiteColor];
    
    /*---------------UILabel高级属性----------------------*/
    
    // 设置阴影的颜色,如果使用clearColor就没有颜色
    label.shadowColor = [UIColor grayColor];
    
    // 设置阴影的偏移量
    label.shadowOffset = CGSizeMake(3, 3);
    
    // 设置label中文字的对齐模式,默认是靠左对齐
    label.textAlignment = NSTextAlignmentCenter;
    
    // 设定label文字显示的行数,默认值为1,即只用一行来显示
    // 其他大于0的行数,文字会尽量按照设定的行数来显示
    // 如果这个值为0:系统会对文字自动计算所需要的行数,按照所需要的行数来显示文字。
    label.numberOfLines = 0;
    
    
    // self.view.backgroundColor = [UIColor whiteColor];
    
    // 将Label显示到屏幕上
    [self.view addSubview:label];
}

其实就跟我们 android 里面的 TextView 是功能一样的一个控件,只不多在 android 开发里面,我们写对应的 TextView 主要都是通过 xml 这种方式去写,但是其实最终都是通过对应的 xml 解析,然后生成对应的对象,再进行测量和布局,最后才能到显示。

看到 IOS 这个地方对 UILabel 的处理,它是固定了对应控件的大小,这样就省去了 android 里面进行多次布局测量的过程,相较而言 IOS 这种对 UI 控件的处理,会在效率上提高很多,但是与此同时会带来有些效果并不能很方便的呈现,比如自适应宽高的控件。

总的来说,android 和 IOS 对相似控件的处理方式是各有千秋,更深入的去理解不同平台之间的差异,才能有助于我们写出更多更好更高效的控件出来。

你可能感兴趣的:(IOS-UILabel使用)