ios动态设置lbl文字标签的高度_IOS开发教程-查字典教程网
ios动态设置lbl文字标签的高度
ios动态设置lbl文字标签的高度
发布时间:2015-06-06 来源:查字典编辑
摘要:本文给大家分享的是ios动态设置lbl文字标签的高度宽度的方法,一共给大家汇总了3种方法,小伙伴们根据自己的项目需求自由选择。代码如下:tx...

本文给大家分享的是ios动态设置lbl文字标签的高度宽度的方法,一共给大家汇总了3种方法,小伙伴们根据自己的项目需求自由选择。

代码如下:

txtlbl.font = [UIFont boldSystemFontOfSize:14.0f];

txtlbl.numberOfLines = 0;

NSString *str = @" 阿方决定设立科技特网络离开电视剧分w额两个大陆高科技了了不见了日i倒计时离开我说老师肯德基弗兰克萨江东父老将费德勒说阿方决定设立科技特网络离开电视剧分w额两个大陆高科技了了不见了日i倒计时离开我立科说老师肯德基弗兰克萨江东父老将费德勒说";

CGSize size = [str sizeWithFont:txtlbl.font constrainedToSize:CGSizeMake(txtlbl.frame.size.width, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];

//根据计算结果重新设置txtlbl的尺寸

[txtlbl setFrame:CGRectMake(7, 0, 310, size.height)];

txtlbl.text = str;

方法二:

代码如下:

// iOS7_API_根据文字 字数动态确定Label宽高

// 设置Label的字体 HelveticaNeue Courier

UIFont *fnt = [UIFont fontWithName:@"HelveticaNeue" size:24.0f];

_nameLabel.font = fnt;

// 根据字体得到NSString的尺寸

CGSize size = [_nameLabel.text sizeWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:fnt,NSFontAttributeName, nil]];

// 名字的H

CGFloat nameH = size.height;

// 名字的W

CGFloat nameW = size.width;

_nameLabel.frame = CGRectMake(0, 0, nameW,nameH);

方法三:

代码如下:

// 宽度W

CGFloat contentW = self.bounds.size.width - _content.frame.origin.x - kMargin;

// label的字体 HelveticaNeue Courier

UIFont *fnt = [UIFont fontWithName:@"HelveticaNeue" size:18.0f];

_content.font = fnt;

_content.numberOfLines = 0;

_content.lineBreakMode = NSLineBreakByWordWrapping;

// iOS7中用以下方法替代过时的iOS6中的sizeWithFont:constrainedToSize:lineBreakMode:方法

CGRect tmpRect = [_content.text boundingRectWithSize:CGSizeMake(contentW, 1000) options:NSStringDrawingUsesLineFragmentOrigin attributes:[NSDictionary dictionaryWithObjectsAndKeys:fnt,NSFontAttributeName, nil] context:nil];

// 高度H

CGFloat contentH = tmpRect.size.height;

NSLog(@"调整后的显示宽度:%f,显示高度:%f"contentW,contentH);

_content.frame = CGRectMake(0, 0, contentW,contentH);

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新IOS开发学习
    热门IOS开发学习
    编程开发子分类