code/xib/storyboard
来源:互联网 发布:动画合成软件 编辑:程序博客网 时间:2024/06/05 10:59
iOS界面开发无非就是这三种方法。演化的过程:
code -> xib -> storyboard
各自优缺点:
code
优点:
- 方便定位问题
- 不用打开xib和storyboard(在Xcode中打开这两个东西,特别比较复杂界面,体验不好)
- 多人协作比较方便,diff和merge清晰明了
缺点:
- 代码比较繁琐,特别是屏幕多元化之后
- 确认效果必须得运行程序才可以看出来
xib
优点:
- 可视化搭建界面,简单方便
- 小的View可以在多个地方复用,比如TableViewCell
- Size Classes 和 Auto Layout可以比较方便使用(写代码的话比较头疼)
- 多人协作尚可,一般一个View/ViewController多人协作次数不多
缺点:
- 只是单个的ViewController,没有办法管理页面之间的转场和关系
- xib较多会导致app启动后占用内存较多,xib会在app启动后全部加载到内存中
- 出现约束警告和冲突比较多的时候比较难定位问题
storyboard
优点:
- 可视化搭建界面,简单方便
- Size Classes 和 Auto Layout可以比较方便使用
- 可以管理页面之间的关系和页面跳转,页面之间逻辑可以清晰的展示
- app启动的时候占用内存小。会先加载用到的页面,后面用到哪个页面才会陆续加载
缺点:
- storyboard计较复杂的话,Xcode打开比较卡。
- 有时修改了一个页面,莫名的会修改其他页面的东西,diff的时候会看到一大片修改
- 多人协作比较麻烦,特别是多个人同时修改一个storyboard
- 出现约束警告和冲突比较多的时候比较难定位问题
总结
不太推荐代码写界面,虽然现在有一些开源库可以用代码比较方便的添加和修改约束,但是可视化搭建界面还是趋势。当然,在某些场合下是有代码编写会比较方便,建议打辅助吧。
可视化界面搭建会越来越简单,越来越方便。会复用的界面建议用xib实现,复用比较方便,而且多人修改可能性比较大。其他的还是建议用storyboard吧,毕竟苹果一直在做优化。
storyboard使用的几个建议:
1. 按业务切割成几个storyboard,这样减少多人协作造成的冲突
2. 把所有的warning解决掉,不然等warning较多的时候,一旦出现问题你想定位,呵呵(多么痛的领悟)
3. 每次提交一定要仔细diff,确认是自己做的修改才提交
4. 各个约束一定要思路清晰,不确定或者没有效果的约束及时去掉
- code/xib/storyboard
- storyboard、xib、pure code,选谁?
- 关于code,xib,storyboard的各自优劣
- Xib&Storyboard
- xcode xib,storyboard降级
- storyboard 和 xib
- storyboard 跳转 xib
- xib 与 Storyboard 区别
- Xib和storyboard对比
- 动态加载StoryBoard、xib
- Xib和storyboard对比
- Xib和storyboard对比
- Xib和storyboard对比
- Storyboard/Xib 进阶教程
- Xib和storyboard对比
- ios-xib和storyboard
- Xib And Storyboard
- Xib和storyboard的比较
- RectF、Rect和PointF、Point类的区别
- Android 6.0及以上运行时权限处理完全解析
- 控制线程(NSThread)和运行时循环(NSRunLoop)的退出
- jQuery 复习笔记
- Struts2初步
- code/xib/storyboard
- easyUI分页问题
- iOS源生HTTP网络请求(get/post)下载任务
- Common Predefined Macros
- STL源码剖析
- mingw
- opengl 纹理知识点
- 初学HTML5必须知道的那些事(一)
- mongodb基本使用