【iOS】根据文本内容确定文本框高度

第三方库TQRichTextView   https://github.com/TinyQ/TQRichTextView 是一个图文混排的第三方库,可以根据文本内容设置文本框的高度。系统也自带了一种方法可以根据文本的内容设置文本的高度。

	UILabel *testLabel = [UILabel new];
	testLabel.backgroundColor = [UIColor grayColor];
	testLabel.font = [UIFont systemFontOfSize:14];
	NSString *testLabelContent = @"“百度”这一公司名称便来自宋词“众里寻他千百度”。 (百度公司会议室名为青玉案,即是这首词的词牌)。而“熊掌”图标的想法来源于“猎人巡迹熊爪”的刺激,与李彦宏博士的“分析搜索技术”非常相似,从而构成百度的搜索概念,也最终成为了百度的图标形象。 在这之后,由于在搜索引擎中,大都有动物形象来形象,如SOHU的狐,如GOOGLE的狗,而百度也便顺理成章称做了熊。百度熊也便成了百度公司的形象物。";
	testLabel.text = testLabelContent;
	testLabel.numberOfLines = 0;//多行显示,计算高度
	testLabel.textColor = [UIColor whiteColor];
//这个注释的可以自动设置宽度
//	CGSize size = CGSizeMake(320, 1000); //先预设一个宽和高
//	CGSize titleSize = [titleLabel.text sizeWithFont:titleLabel.font constrainedToSize:size lineBreakMode:NSLineBreakByWordWrapping];//titleLabel.text是文本大小,这里计算的是文本大小  iOS7 以后这个方法就被遗弃了
	
	CGSize testSize = [testLabelContent boundingRectWithSize:CGSizeMake(self.view.frame.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]} context:nil].size;
	
	testLabel.frame = CGRectMake(0, 100, testSize.width, testSize.height);
	
	[self.view addSubview:testLabel];
【iOS】根据文本内容确定文本框高度_第1张图片就是这样的额效果图。

关于第三方库TQRichTextView的使用可以参考者一篇博客:

http://www.cnblogs.com/CCSSPP/p/3339984.html



你可能感兴趣的:(ios开发,TQRichTextView,根据文本内容确定文本框高度)