根据UIlabel的内容父视图自适应高度

如下图的需求:

这是一个单元,左侧是个固定宽高的UIImageView,起名imgView,中间也是个UIImageView,起名selectImgView,右侧是个UILabel,起名contentLab。

现在的问题是,但文字数据不多时,整个视图高度设置为60是可以的,但是文字多了的时候,会造成显示不全。

于是,需要让整个视图的高度动态变化,由于左侧的imageView大小是不变的,label的大小是变化的,整个视图的高度需要和label绑定。代码设置如下:

将contentLab设置了一个初始高度,和左侧的imgView一样。完美解决了整个视图高度随着contentlab内容高度的变化,而且文字没有超出imgView的底部的时候,整个视图的高度也只是imgView的高度。contentLab文字高度超出imgView底部的时候,整个视图也是随着contentLab的高度来变化的。

但是又出现的下面的问题:文字比较少的时候,会像下面这样显示:


contentLabel的高度过高,内容太少,UILabel会自动在垂直方向居中显示,而且没有属性用来更改这种显示。

下面是我找的一个比较靠谱的方法的代码:

.h文件


.m文件

之的显示是这样的:


以上是我遇到的问题,欢迎大家一起讨论0^0~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,205评论 4 61
  • 听着听着不知如何睡着,睡着睡着不知何时起梦。 梦中人是颜已改的从...
    青春有点迷阅读 1,943评论 0 0
  • 最美的风景在最不经意的时刻,矫首暇观,淡淡心情。 最美的自己是追寻,最美的人生在路上,美丽从来不是刻意...
    Alice_b63b阅读 1,267评论 0 0