您的位置:首页 > 产品设计 > UI/UE

iOS UIlabel 自动换行,文字自适应

2013-10-17 13:19 495 查看
第一种方法:直接设置label的属性: label.lineBreakMode = NSLineBreakByWordWrapping;

这种方法适用于文字比较少,而label的大小比较大到可以容纳所有文字

第二种方法:文字比较多,需要动态根据文字来调整label的大小以显示所有文字

//初始化label

UILabel *label =
[[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];

//设置自动行数与字符换行

[label setNumberOfLines:0];

label.lineBreakMode = NSLineBreakByWordWrapping;

// 测试字串

NSString *s
= @"从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,从来就没有什么救世主,v从来就没有什么救世主,v";

//设置一个行高上限

CGSize size
= CGSizeMake(320,2000);

//计算实际frame大小,并将label的frame变成实际大小

CGSize size01 =
[s sizeWithFont:[UIFont systemFontOfSize:15.0f] constrainedToSize:sizelineBreakMode:NSLineBreakByWordWrapping];

[label setFrame:CGRectMake(10,50, size01.width, size01.height)];

label.text = s;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: