UIlabel

UIlabel代码如下:

//创建uilabel
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(20, 40, 280, 80)];
//设置背景色
label1.backgroundColor = [UIColor grayColor];
//设置tag
label1.tag = 91;
//设置标签文本
label1.text = @"CCBASE.NET!";
//设置标签文本字体和字体大小
label1.font = [UIFont fontWithName:@"Arial" size:30];
//设置文本对齐方式
label1.textAlignment = UITextAlignmentCenter;
//文本对齐方式有以下三种
//typedef enum {
//    UITextAlignmentLeft = 0,左对齐
//    UITextAlignmentCenter,居中对齐
//    UITextAlignmentRight, 右对齐                 
//} UITextAlignment;
//文本颜色
label1.textColor = [UIColor blueColor];
//超出label边界文字的截取方式
label1.lineBreakMode = UILineBreakModeTailTruncation;
//截取方式有以下6种
//typedef enum {       
//    UILineBreakModeWordWrap = 0,    以空格为边界,保留整个单词         
//    UILineBreakModeCharacterWrap,   保留整个字符         
//    UILineBreakModeClip,            到边界为止         
//    UILineBreakModeHeadTruncation,  省略开始,以……代替       
//    UILineBreakModeTailTruncation,  省略结尾,以……代替      
//    UILineBreakModeMiddleTruncation,省略中间,以……代替,多行时作用于最后一行       
//} UILineBreakMode;
//文本文字自适应大小
label1.adjustsFontSizeToFitWidth = YES;
//当adjustsFontSizeToFitWidth=YES时候,如果文本font要缩小时
//baselineAdjustment这个值控制文本的基线位置,只有文本行数为1是有效
label1.baselineAdjustment = UIBaselineAdjustmentAlignCenters;
//有三种方式
//typedef enum {
//    UIBaselineAdjustmentAlignBaselines = 0, 默认值文本最上端于label中线对齐
//    UIBaselineAdjustmentAlignCenters,//文本中线于label中线对齐
//    UIBaselineAdjustmentNone,//文本最低端与label中线对齐
//} UIBaselineAdjustment;
//文本最多行数,为0时没有最大行数限制
label1.numberOfLines = 2;
//最小字体,行数为1时有效,默认为0.0
label1.minimumFontSize = 10.0;
//文本高亮
label1.highlighted = YES;
//文本是否可变
label1.enabled = YES;
//去掉label背景色
//label1.backgroundColor = [UIColor clearColor];
//文本阴影颜色
label1.shadowColor = [UIColor grayColor];
//阴影大小
label1.shadowOffset = CGSizeMake(1.0, 1.0);
//是否能与用户交互
label1.userInteractionEnabled = YES;
[self.view addSubview:label1];

一个label 多种不同颜色

    NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"Using NSAttributed String"];
    [str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0,5)];
    [str addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(6,12)];
    [str addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange(19,6)];
    [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-BoldItalicMT" size:30.0] range:NSMakeRange(0, 5)];
    [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:30.0] range:NSMakeRange(6, 12)];
    [str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Courier-BoldOblique" size:30.0] range:NSMakeRange(19, 6)];
    attrLabel.attributedText = str;


文本自适应高度

    UIFont *font = [UIFont systemFontOfSize:14];
    CGSize size = [content boundingRectWithSize:CGSizeMake(SCREEN_WIDTH - 16, 999) options: NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName:font}context:nil].size;
    return size.height;

IOS 7的文本自适应高度

    CGSize size = CGSizeMake(SCREEN_WIDTH - 16,999);
    CGSize labelsize = [content sizeWithFont:[UIFont systemFontOfSize:14] constrainedToSize:size lineBreakMode:UILineBreakModeWordWrap];
    return labelsize.height;

自适应可能会有0.1-0.5的误差,我曾经在ios8的iPhone6 plus上面适配就碰到误差0.1

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值