IOS基础-UILabel

最普通的文本标签, 说白了就是一个字符串的集合,来展示文本用的。

如下详细说明了label的各种属性

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    UILabel *label = [[UILabel alloc] init];
    
    //设置显示的文字
    label.text = @"这是一个文本控件";
    //设置显示的文字字体
    label.font = [UIFont systemFontOfSize:18.0];
    //设置文字颜色
    label.textColor = [UIColor redColor];
    //设置阴影颜色
    label.shadowColor = [UIColor greenColor];
    //设置阴影的大小
    label.shadowOffset = CGSizeMake(1.0, 1.0);
    /*
     typedef NS_ENUM(NSInteger, NSTextAlignment) 
     {
         NSTextAlignmentLeft      = 0,      // 左对齐
         #if   iphone
           NSTextAlignmentCenter    = 1,    // 居中
           NSTextAlignmentRight     = 2,    // 右对齐
         #else  ipad
           NSTextAlignmentRight     = 1,    // Visually right aligned
           NSTextAlignmentCenter    = 2,    // Visually centered
         #endif  其他
           NSTextAlignmentJustified = 3,    // 和段落对齐
           NSTextAlignmentNatural   = 4,    // 默认状态  正常情况下
     } NS_ENUM_AVAILABLE_IOS(6_0);
     */
    //文字显示模式
    label.textAlignment = NSTextAlignmentCenter;
    //设置自动换行  不过是在ios使用 现在已经过期
    label.lineBreakMode = UILineBreakModeCharacterWrap;
    //现在可以使用这个换行
    label.numberOfLines = 0;
    //设置高亮状态下的文字颜色
    label.highlightedTextColor = [UIColor greenColor];
    //设置字体最小值  不过minimumFontSize已经过期 
    label.minimumFontSize = 18.0;
    label.minimumScaleFactor = 18.0;
    //设置控件对象的大小是否随标题内容的大小自动调整
    [label setAutoresizesSubviews:true];

    //设置用户可不可以操作
    label.userInteractionEnabled = NO;
    //设置控件的状态 YES为可用
    label.enabled = YES;

    //指定了线宽度的最大值,以便计算固有内容大小
    /*
     UILabel和NSTextField对于多行文本的固有内容大小是模糊不清的。
     文本的高度取决于线的宽度,这也是解决约束条件时需要弄清的问题。
     为了解决这个问题,这两个类都有一个叫做preferredMaxLayoutWidth的属性,
     这个属性指定了线宽度的最大值,以便计算固有内容大小。
     */
    label.preferredMaxLayoutWidth = 19.0;
    
    //设置文本字体是否要减小来适应label的区域
    label.adjustsFontSizeToFitWidth = NO;
    
    /*
     typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
     UIBaselineAdjustmentAlignBaselines = 0, // 默认 文本最上端于label中线对齐
     UIBaselineAdjustmentAlignCenters,       // 文本中线于label中线对齐
     UIBaselineAdjustmentNone,               // 文本最低端与label中线对齐
     };
     */
    //这个值设置文本的基线位置
    label.baselineAdjustment = UIBaselineAdjustmentAlignBaselines;
    
    //把文本添加到控制器的视图中
    [self.view addSubview:label];
    


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。