Autolayout浅析

  • 笔者最近研究Autolayout的发现,有一些规律
    • 比如一般我们新建一个项目,默认Main.storyboard里面的控制器是一个正方形,Size是inferred类型,通常我们就在这里面进行Autolayout的布局,这个学的就是这样,没有问题。
    • 那么问题来了,做过翻页效果的小伙伴都知道,自定义一个控件来实现,通过xib来实现,那么那个最开始的那个UIView的尺寸,我们要关心嘛?Size是inferred类型,还是自由类型,然后更改它的尺寸,比如宽300高130,在第一个里面设置子控件的约束,还是在那个宽300高130的里面给子控件设置约束,笔者特地实验了一把,发现这个没有关系,随便你怎么设置,为什么?
    • 因为,你的那个最初的UIView尺寸会根据外面的尺寸而改变,不是由自己设置的尺寸决定的,那么,笔者认为,我们需要管理的就是里面的子控件的约束,相对于最初的那个UIView的约束,其他的也不用关心,因为你设置好里面的子控件的约束之后,它会自动去适配父控件的尺寸,不用你关心,如果还要你关心,那么苹果就做的不好

warning 默认新建的xib里面的UITableCell的尺寸宽是320,高是44,当初理解为会像新建的storyboard里面的正方形一样,在里面开始布局,添加约束,因为那个正方形的size是inferred类型,可推测的,然而UITableViewCell是默认给的,这个不重要,就算你给了宽160,高40,它显示的时候不是由自己决定的,而是由它的tableView来决定,高度由tableView.rowHeight来决定,宽度和tableView的宽度一样的,所以,在那个320*44里面添加子控件并添加相应的约束,没有什么问题,它会默认按照那个约束显示的,over

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Autolayout概念 Autolayout的警告和错误 自动布局的核心公式 代码实现Autolayout NS...
    Z了个L阅读 1,666评论 0 1
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,474评论 4 61
  • 前言 iPhone自诞生以来,随着其屏幕尺寸不断的多样化,屏幕适配的技术一直在发展更新。目前,iOS系统版本已经更...
    VV木公子阅读 15,535评论 24 170
  • 算命六字真言 审,敲,打,千,隆,卖。所谓先审后敲,急打慢千,隆卖齐施,敲打并用,十千九打,十隆九成,先千后往,无...
    结构学AI阅读 6,057评论 0 2
  • 月值中秋照羌塘。戍边疆,望故乡。朔风掠过,草殇人惆怅。长歌一曲话寂寥,影相伴,孤灯旁; 虎啸山林鹰高翔。...
    卢廷阅读 1,832评论 1 0

友情链接更多精彩内容