UILabel自适应

来源:互联网 发布:4399仙落凡尘网络问题 编辑:程序博客网 时间:2024/05/06 12:28

自适应有很多方法 目前用这个挺好 但有些需要注意

假如label是用了storyboard做的适配  记得宽度设置 要和下面的SCREEN_WIDTH-40一致,而且其它属性也都和代码完全一致 避免出先得到的自适应高度不准确的问题

//返回自适应label高度

-(CGFloat)recieveLabelHeight{

        AnswerOneSubModel *model=self.datasource[_count];

        _headerLabel.numberOfLines =0;//不限制

        _headerLabel.lineBreakMode =NSLineBreakByWordWrapping;//NSLineBreakByClipping  NSLineBreakByCharWrapping

        _headerLabel.textAlignment =NSTextAlignmentLeft;

        _headerLabel.text = [NSStringstringWithFormat:@"%@%@",@"        ",model.quationStr];

        _headerLabel.font = [UIFontsystemFontOfSize:16];

        CGSize labelSize = [_headerLabelsizeThatFits:CGSizeMake(SCREEN_WIDTH-40,MAXFLOAT)];

        CGFloat height =ceil(labelSize.height);

        if ([model.TopieTypeisEqualToString:@"2"]) {

           _imageview.image=[UIImageimageNamed:@"单选"];

        }elseif([model.TopieTypeisEqualToString:@"1"]){

           _imageview.image=[UIImageimageNamed:@"判断"];

        }elseif ([model.TopieTypeisEqualToString:@"3"]){

           _imageview.image=[UIImageimageNamed:@"判断"];

        }

        return height;

}


0 0