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

UILabel, UITextView 高度自适应

2014-08-26 09:13 351 查看
1. LineBreakMode

NSString *strText = @"String For Text";

UIFont = [UIFont systemFontOfSize:15.0f];

CGSize *size = [strText sizeWithFont:font constrainedToSize:CGSizeMake(lbTest.frame.size.width, NSIntegerMax) lineBreakMode:UILineBreakModeWordWrap];

CGRect rect = lbTest.frame;

rect.size.height = size.height;

[lbTest setFrame:rect];

2. sizeToFit

这种方式适用与UILabel,能自适应宽度,不会自动换行,如果需要自适应高度,需要给出换行符

UILabel *label;

[label sizeToFit];

3. contentSize

这种方式适合UITextView,因为UITextView继承与UIScrollView,所以用txtView_.contentSize可取到其内部滚动区域大小,即通常情况下的实际内容大小

CGFloat height = txtView_.contentSize.height;

CGRect rect = txtView_.frame;

rect.size.height = height;

[txtView_ setFrame:rect];

注:如果设定过UITextView的AutoSize有时取到的height值会有所不同,例如 如果设定高度AutoSize,则取到的height为实际高度的两倍
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: