ios学习笔记: TableView利用label调整cell高度
2015-06-06 14:52
549 查看
tableView中:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath
*)indexPath {
//模拟数据
MC_EatCommentModel* model = [self.commentItemsobjectAtIndex:indexPath.row];
//根据labei设置高度
CGSize size =CGSizeMake(260,1000);
CGSize labelSize = [model.commentsizeWithFont:[UIFontsystemFontOfSize:12.0]constrainedToSize:sizelineBreakMode:NSLineBreakByWordWrapping];
return labelSize.height +44;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath
*)indexPath {
staticNSString *CellIdentifier =@"MC_EatCommentCell";
BOOL nibsRegistered =NO;
if (!nibsRegistered) {
UINib *nib = [UINibnibWithNibName:NSStringFromClass([MC_EatCommentCellclass])bundle:nil];
[tableView registerNib:nibforCellReuseIdentifier:CellIdentifier];
nibsRegistered = YES;
}
MC_EatCommentCell *cell = (MC_EatCommentCell *)[tableViewdequeueReusableCellWithIdentifier:CellIdentifier];
self.commentModel = [self.commentItemsobjectAtIndex:indexPath.row];
cell.userName.text=self.commentModel.userName;
cell.label_time.text=self.commentModel.time;
//自适应高度,传入cell中
[cell setCommentText:self.commentModel.comment];
cell.m_userModel =self.commentModel;
[cell.iconsetBackgroundImage:[UIImageimageNamed:self.commentModel.icon]forState:UIControlStateNormal];
return cell;
}
cell中:
-(void)setCommentText:(NSString*)text{
self.comment.text = text;
//设置label的最大行数,这里设为0,而用 size.height去限制高度。eg当设置为3时 label会自动调节高度,不再紧贴着label上方
self.comment.numberOfLines =0;
CGSize size =CGSizeMake(260,1000);
CGSize labelSize = [self.comment.textsizeWithFont:self.comment.fontconstrainedToSize:sizelineBreakMode:NSLineBreakByWordWrapping];
self.comment.frame =CGRectMake(self.comment.frame.origin.x,self.comment.frame.origin.y,
labelSize.width, labelSize.height);
self.comment.textAlignment =NSTextAlignmentLeft;
}
参考:http://blog.csdn.net/swingpyzf/article/details/18093959
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?
- Android、iOS和Windows Phone中的推送技术详解
- IOS 改变键盘颜色代码
- Android和IOS的浏览器中检测是否安装某个客户端的方法
- javascript实现阻止iOS APP中的链接打开Safari浏览器
- iOS开发之路--微博OAuth授权_取得用户授权的accessToken
- ios通过按钮点击异步加载图片
- ios中图像进行压缩方法汇总
- IOS检测指定路径的文件是否存在
- iOS、Mac OS X系统中编程实现汉字转拼音的方法(超级简单)