您的位置:首页 > 其它

在一个label中显示多行,自动换行

2013-09-13 18:47 369 查看
在active.com的开发项目中,遇到一个动态显示detail page的问题。取的数据有的时候多有的时候少,而且还需要自动换行。计算行的高度,text的长度,大小等。

EventAddresslabel=[[UILabel
 alloc]initWithFrame:CGRectMake(starttimelabel.frame.origin.x,   starttimelabel.frame.origin.y+distance, 270, 20)];
EventAddresslabel.backgroundColor=[UIColor
 clearColor];
EventAddresslabel.textColor=[UIColor
 whiteColor];
EventAddresslabel.font=[UIFont
 systemFontOfSize:15];
EventAddresslabel.numberOfLines
 =0;
//this
 is used to determine how many lines this label will have.if =3,it means this label's text will show 3 lines.if =0 ,it means that this label's text will show the line whate it needs.no limit.
EventAddresslabel.lineBreakMode
 = UILineBreakModeWordWrap;
//
 sys will change the line by word.aslo can be by character  for another value.
EventAddresslabel.text=[NSString
 stringWithFormat:@
"%@ 
 %@,%@"
,cassetInfo.eventAddress,cassetInfo.city,cassetInfo.state];
[uiview
 addSubview:EventAddresslabel];
 
CGSize
EventAddresslabelsize = [EventAddresslabel.text sizeWithFont:[UIFont systemFontOfSize:15]constrainedToSize:CGSizeMake(285, [EventAddresslabel.text length])lineBreakMode:UILineBreakModeWordWrap];
[EventAddresslabel
 setFrame:CGRectMake(EventAddresslabel.frame.origin.x,EventAddresslabel.frame.origin.y,   290,EventAddresslabelsize.height+10)];
Description=[[UILabel
 alloc]initWithFrame:CGRectMake(5,EventAddresslabel.frame.origin.y+EventAddresslabel.frame.size.height, 320, 60)];
DescriptionactivityView
 = [[UIActivityIndicatorView alloc]  initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
DescriptionactivityView.frame
 = CGRectMake(140.f, EventAddresslabel.frame.origin.y+30, 30.0f,30.0f);
Londinglabel_1=[[UILabel
 alloc]initWithFrame:CGRectMake(132, Description.frame.origin.y+30, 80,20)];
Labelflag=0;
Description.backgroundColor=[UIColor
 clearColor];
Description.textColor=[UIColor
 whiteColor];
Description.font=[UIFont
 systemFontOfSize:15];
Description.numberOfLines
 =0;
Description.lineBreakMode
 = UILineBreakModeWordWrap;
[uiview
 addSubview:Description];
//该代码片段来自于: http://www.sharejs.com/codes/objectc/2000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: