标签:
http://www.cnblogs.com/ygm900/archive/2013/05/19/3086902.html
根据字数自适应高度暂未实现
// // ViewController.m // UIlabel // // Created by cyw on 15-5-17. // Copyright (c) 2015年 cyw. All rights reserved. // #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(20, 20, 100, 50)]; // 设置文本内容 label.text=@"labellabellabellabellabellabellabellabellabellabellabellabellabellabel"; // 设置字体 label.font=[UIFont systemFontOfSize:20]; // 设置文本颜色 label.textColor=[UIColor blackColor]; // 设置阴影颜色 label.shadowColor=[UIColor yellowColor]; // 设置阴影偏移量 label.shadowOffset=CGSizeMake(10, 10); // 文本对齐方式 label.textAlignment=NSTextAlignmentCenter; // 文本过长时的显示格式 // typedef NS_ENUM(NSInteger, NSLineBreakMode) { // NSLineBreakByWordWrapping = 0, 以单词为显示单位显示,后面部分省略不显示。 // NSLineBreakByCharWrapping, 以字符为显示单位显示,后面部分省略不显示。 // NSLineBreakByClipping, 剪切与文本宽度相同的内容长度,后半部分被删除。 // NSLineBreakByTruncatingHead, 前面部分文字以……方式省略,显示尾部文字内容 // NSLineBreakByTruncatingTail, 结尾部分的内容以……方式省略,显示头的文字内容。 // NSLineBreakByTruncatingMiddle 中间的内容以……方式省略,显示头尾的文字内容。 // } label.lineBreakMode=NSLineBreakByCharWrapping; // 最多显示的行数 默认0显示多行 label.numberOfLines=0; // 是否可用 label.enabled=YES; // 是否高亮 label.highlighted=NO; // 高亮字体颜色 label.highlightedTextColor=[UIColor redColor]; //自动调整字体来适应宽度 label.adjustsFontSizeToFitWidth=YES; //如果adjustsFontSizeToFitWidth属性设置为YES,这个属性就来控制文本基线的行为。 // typedef NS_ENUM(NSInteger, UIBaselineAdjustment) { // UIBaselineAdjustmentAlignBaselines = 0, 默认,文本最上端与中线对齐。 // UIBaselineAdjustmentAlignCenters, 文本中线与label中线对齐。 // UIBaselineAdjustmentNone, 文本最低端与label中线对齐。 // }; label.baselineAdjustment=UIBaselineAdjustmentAlignBaselines; // 标签属性文本 // NSString *text=@"text"; // NSMutableAttributedString *textlabelStr=[[NSMutableAttributedString alloc]initWithString:text]; // [textlabelStr setAttributes:@{NSForegroundColorAttributeName:[UIColor redColor],NSFontAttributeName:[UIFont systemFontOfSize:17]} range:NSMakeRange(1, 2)]; // label.attributedText=textlabelStr; // 计算UILabel随字体多行后的高度 CGRect bounds=CGRectMake(0, 0, 200, 300); float height=[label textRectForBounds:bounds limitedToNumberOfLines:20].size.height; NSLog(@"%f",height); [self.view addSubview:label]; //竖排文字 UILabel *label1=[[UILabel alloc]init]; label1.frame=CGRectMake(200, 200, 40, 200); label1.text=@"请\n竖\n直\n方\n向\n排\n列"; label1.numberOfLines=[label1.text length]; [self.view addSubview:label1]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end
标签:
原文地址:http://www.cnblogs.com/cuiyw/p/4510724.html