iOS中UIView的sizeToFit

iOS中UIView的sizeToFit

官方文档的解释

resize当前view,使得它找到最适合自己的大小.通常是通过view内容来确定它自己的大小.不要重写这个方法.

我们可以这样理解: 通过该方法,系统会返回给我们一个view的最适合的大小size.

常用场景

  1. UILabel中,先设置label view的width,然后使用sizeToFit,会根据内部文字多少,自适应返回当前label的size,其中height就是系统自动计算的.(ps:这里也可以用NSString的boundingRect方法计算文字宽高,然后设置给label)
  2. UIImageView, 如果该imageView中有图片,调用sizeToFit,返回的size就是内部图片的size
  3. UISwitch, 这个控件的默认size是固定的,调用以后返回默认的size.(ps:如果需要改变大小,使用transform属性)
  4. navigationItem, 如果设置它使用customView时候,最好先调用sizeToFit

UILabel中有一个关键属性adjustsFontSizeToFitWidth,可以通过label的width反向自适应设置字体的font.注意这个属性需要配合baselineAdjustment=UIBaselineAdjustmentAlignCenters一起使用.

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

推荐阅读更多精彩内容

  • 写在前面 iOS的的布局机制「auto layout」不是一个新概念,它早在iOS 6中就推出来了,当下距离iOS...
    西门淋雨阅读 5,454评论 2 4
  • UILabel是一个常用的控件,它的属性设置的方法在纯代码中经常使用。在storyboard中,使用UILabel...
    坤哥lqk阅读 4,302评论 0 2
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 7,311评论 1 14
  • 安然,39岁,巨蟹座,但她身边的朋友总开玩笑说她妈一定记错了她的生日,因为她像极了处女座,不仅仅是因为她追求完美,...
    有一天不思考阅读 2,675评论 0 2
  • [TOC] 模板引擎 easyTpl 的实现 概述 项目中经常需要使用js模板去渲染字符串,像 handlebar...
    DanweiChan阅读 3,968评论 0 0