关于xib、Masonry、Storyboard和手动计算布局的灵活运用

xib:基于autolayout,适用于简单、静态的布局,优点是效率高,缺点是不灵活,调整起来很麻烦

Masonry:基于autolayout,只是用代码来写,相较于xib灵活,可以做屏幕适配,尤其适合自适应高度的布局,比如说单元格中的布局

Storyboard:在编译前提供了可视化界面,可拖控件,可加约束,在开发时比较直观,而且一个storyboard可以有很多的界面,每个界面对应一个类文件,通过storybard,可以直观地看出整个App的结构。

手动计算:适用于复杂、动态布局,比如说:单元格动态高度(根据数据源来布局)、屏幕适配,优点是能适应所有条件下的布局,缺点是效率低、横竖屏切换比较复杂

总结:1.xib主要适用于简单、静态布局,Masonry、手动计算主要用于复杂、动态计算。不过xib也可以做一些简单的动态布局。

           2.Masonry、手动计算都属于纯代码布局,相当于xib或者storyboard而言,适用于经常要改动的界面,因为改动起来比较方便。

3.在做横屏和竖屏切换时,Masonry要比手动计算简单得多,优选Masonry。

ps:在布局时,应该根据具体情况选用合适的方法,提高效率,灵活运用。

4.Storyboard:需求变动时,需要修改storyboard上对应的界面的约束,与XIB一样可能要重新添加约束,或者添加约束会造成大量的冲突,尤其是多团队开发。对于复杂逻辑控制不同显示内容时,比较困难。当多人团队或者多团队开发时,大家会同时修改一个storyboard,导致大量冲突,解决起来相当困难。

5.XIB:需求变动时,需要修改XIB很大,有时候甚至需要重新添加约束,导致开发周期变长。XIB载入相比纯代码自然要慢一些。对于比较复杂逻辑控制不同状态下显示不同内容时,使用XIB是比较困难的。当多人团队或者多团队开发时,如果XIB文件被发动,极易导致冲突,而且解决冲突相对要困难很多。

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

相关阅读更多精彩内容

  • 37店制定任务350件,25天完成任务,平均每天14件,客单价制定达900,平均每天13000.1字头达35%,平...
    positive默然阅读 734评论 0 0
  • 大一眼看一整个学期要结束了,时间说快不快。可是想想看当时刚到学校的日子里,一切都是那么的悸动那么的渴望和有信心。生...
    蛋丹阅读 2,563评论 0 0

友情链接更多精彩内容