关闭

label在cell中 自适应

标签: label-自适应
336人阅读 评论(0) 收藏 举报
分类:

先在初始化方法中将之创建,并设置numberOfLines = 0

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self ) {

 UILabel *tempContent = [[UILabel alloc]initWithFrame:CGRectMake(self.titleLabel.frame.origin.x, CGRectGetMaxY(self.titleLabel.frame),BOUNDS.size.width-self.titleLabel.frame.origin.x-15, 30)];
    tempContent.font = [UIFont systemFontOfSize:14.0f];
    tempContent.textAlignment = NSTextAlignmentLeft;
    tempContent.textColor = CLColor(102, 102, 102);
    tempContent.numberOfLines = 0;
    [self.contentView addSubview:tempContent];
    self.contentLabel = tempContent;

    }
    return self;
}

在添加请求文字的方法中,根据请求到的内容,让其根据内容自适应

- (void)setCellValueWith:(NSDictionary *)param {
 self.contentLabel.frame = CGRectMake(self.titleLabel.frame.origin.x, CGRectGetMaxY(self.titleLabel.frame),BOUNDS.size.width-self.titleLabel.frame.origin.x-15, 0);
        [self.contentLabel sizeToFit];//让内容自适应
    }

控制器界面

//得到内容的自适应高度
-(CGFloat)contentHeightWithSize:(CGFloat)size width:(CGFloat)width string:(NSString *)string{
    //第一个参数:是进行自适应的尺寸  第二个参数:布局格式 第三个参数:字符串的属性列表  第四个忽略
    CGRect rect = [string boundingRectWithSize:CGSizeMake(width, 0) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:size]} context:nil];

    return rect.size.height;

}


- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSDictionary *dic = [_dataSource objectAtIndex:indexPath.row];

   CGFloat contentH = [self contentHeightWithSize:13.0 width:200 string:[dic objectForKey:@"topic"]];

    return 60+contentH;


}

好了,已经可以实现label的自适应啦,是不是很简单

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

iOS 中 cell和 label 的自适应高度

之前我们使⽤的cell一直都是同样的高度,或者某行固定⾼度。 实际开发中经常要让cell根据Model中文本的长短动态的更改高度 1、获取文本高度 计算一段文本在限定宽高内所占...
  • YuHuiXia
  • YuHuiXia
  • 2016-02-26 14:25
  • 1626

UITableViewCell高度自适应Label高度

一般在开发的时候,写的Cell, 一般不会是绝对等高的,宽就不说了,一般就那么宽 高度随着cell里面内容的变化而变化的情况是常有的事 作为一枚菜鸟,我就知道两种方法可以让cell自适应高,先说一...
  • u011449317
  • u011449317
  • 2015-10-08 14:24
  • 1530

UItableView Cell 高度自适应--随着多个label内容变化自适应

看了前辈的cell 自有适应。更具需求。完成上下 多个label 自适应 文章链接:http://blog.csdn.net/swingpyzf/article/details/18093959
  • u012106239
  • u012106239
  • 2017-05-15 17:12
  • 834

IOS TableView的Cell高度自适应,UILabel自动换行适应

iOS TableView的Cell高度自适应,UILabel自动换行适应 项目的源码下载地址:http://download.csdn.net/detail/swingpyzf...
  • st646889325
  • st646889325
  • 2016-11-16 09:36
  • 2406

cell自适应高度-masonry适配

今天要提的是cell上label自适应高度 用一张图片说明今天要做的任务,其中做三种情况的cell适配; 首先完成VC里面的代码: 其中: self.tableView....
  • si1279571489
  • si1279571489
  • 2016-11-28 18:21
  • 3222

IOS TableView的Cell高度自适应,UILabel自动换行适应

IOS TableView的Cell高度自适应,UILabel自动换行适应 项目的源码下载地址:http://download.csdn.net/detail/swingpyzf/683...
  • SwingPyzf
  • SwingPyzf
  • 2014-01-10 21:02
  • 89967

Masonry适配——(7)UITableView中自定义UITableViewCell高度自适应及计算

https://github.com/potato512/SYDemo_Masonry 在UITableView列表的使用中,因为在自定义的UITableViewCell中页面相对复杂,所以会出现每...
  • potato512
  • potato512
  • 2017-01-17 16:15
  • 2199

masonry + 自适应cell高度

在之前各种找自适应cell,现在又得结合masonry来自动计算cell的高度,在网上查找各位大神的办法,就是感觉代码好多,经过半天的艰苦奋斗,重要找出来了一个简单的办法,代码看着很少哟!!     ...
  • Red_coralDown
  • Red_coralDown
  • 2016-05-30 17:01
  • 6292

基于SnapKit写的自动计算行高开源库

原文出自:标哥的技术博客 前言最近还是有不少朋友老问Swift版的自动计算行高怎么做,大家使用SnapKit来自动布局时,都希望能够自动地计算出行高,不用每次都自己去算一篇。本篇介绍笔者所开源的基于S...
  • woaifen3344
  • woaifen3344
  • 2016-01-16 17:35
  • 1851

cell高度自适应实现的最简单方式

曾经为了实现cell的高度自适应,不知道吃了多少苦。那个时候,是在我的数据模型model中添加一个height属性,实现它的get方法,在get方法中计算需要多行显示文字的高度,然后再加上其他乱七八糟...
  • studying_ios
  • studying_ios
  • 2017-01-05 16:10
  • 3578
    个人资料
    • 访问:88955次
    • 积分:1911
    • 等级:
    • 排名:千里之外
    • 原创:100篇
    • 转载:54篇
    • 译文:0篇
    • 评论:3条
    最新评论