自动布局有什么优越性?你们公司在用自动布局吗?
如题。我目前不用。
比如我要定位一个按钮,距离顶部 10px,左侧20px
我直接把frame写死坐标不就好了吗?
我目前使用frame布局也是使用相对坐标。比如距离某个控件多少横坐标,距离顶部多少纵坐标等等。不会写死说横坐标233,纵坐标32.这样。
如果用自动布局,也可以做到。但是感觉用不习惯,代码繁琐,容易出错等等。
特别是某些东西必须使用frame。但是你又混杂autolayout,混杂起来很难处理。至少对我来说,要么都用自动布局,要么都用frame。
除非你能说明自动布局解决了我使用frame不能解决的问题或者提供了成倍的效率。但是目前为看不出到底优越在哪。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个问题其实有很多类似的版本,比如当年的"要不要使用ARC代替MRC?","要不要使用Swift?"等等等
现在ARC基本全面取代ARC,是技术趋势;Swift也许将来会全面取代ObjC;但是布局这个问题,前面这两个问题是有区别的,楼主自己也发现了直接吧frame写死坐标就好了。
因为是否使用autolayout是不冲突的,不是说要用了autolayout,所有地方都要用,要不用就都不能用。而是因该针对具体的布局需求,哪个简单用哪个。
同一个VC布局中,是允许部分View有约束,部分View不需要使用autolayout,直接设置frame的。算是比较灵活吧。
另外楼主说的代码比较繁琐等等,我也是这么认为的,我还是不太会用代码写autolayout,但是如果你是使用storyboard做项目的,那情况就完全不一样了。Interface builder(就是你现在用的xcode里面内置的界面编辑器)提供的Autolayout工具,不要太强大太好用。
至于成倍的效率,当然只有在解决相对复杂的问题上才能展现。
代码布局
也好,Autolayout
也好,都是我们写APP的工具,各有所长,各有所短。灵活掌握,见招拆招才是上策。最后举个用了Autolayout事半功倍的例子。
这个带键盘的计算器,按钮不是规则的,有长方形有正方形,要同时适配3.5 4.0 4.7 5.5四个尺寸,写代码太复杂。
补充 竟然忘了autolayout的经典应用场景,iOS 8 自适应 Cell。
如果你开发过安卓应用你就知道了,iOS设备的尺寸正逐渐多元化,用固定布局的劣势正在逐步显现,
AutoLayout
是个非常不错的适配工具(虽然相对Android里适配的工具方法还是小巫见大巫)。在适配中,你就能发现
AutoLayout
所提供的成倍的效率。