一:实现方案在以前就已经确定了下面几个点:
1 使用autoLayout进行适配
2 引入masonry第三方库,提高适配时的开发效率
3 不需要使用autoLayout就能进行适配
4 动态计算显示位置的,可以根据屏幕宽高或父视图或兄弟视图的位置进行动态布局。
二:开发总结
根据实际开发效果来看,总结经验如下:
1 视图层级较少,页面布局简单的,基本使用autoLayout或者总结固定位置即可,比如:VC的tabelView、POI地图、列表地图等。
2 根据业务逻辑控制元素显示位置的,基本都是使用2、4 方案来实现,我们目前适配的大部分页面都是这种类型。
3 部分特殊情况控件,需要改变思路,重现进行UI控件封装,才能完全达到视觉和交互需求,该问题的典型例子是列表/地图底部的一排筛选按钮。
4 部分需求在适配IPAD时,根据UE的需求,需要硬编码判断设备的类型,来判断UI的布局,如:图片列表、大图查看、房型详情等页面。
总体来说,我们把这次的适配工作叫做autoLayout适配,其实是名不副实的,autoLayout只是ios 6以后的一个特性,但它能只是能够处理相对简单的视图直接的布局,而一旦涉及到通过相关业务动态计算视图之间的相对或绝对位置时,还是需要通过获取屏幕的宽高了来进行适配工作。
最后,虽然我们进行了将近一个月的适配工作,但autoLayout的很多特性还有待发掘,请各位共同努力,相互分享经验吧。
分享到:
相关推荐
在iOS开发中,AutoLayout是苹果推出的一种强大的界面布局机制,自iOS6开始引入,用于帮助开发者处理不同屏幕尺寸和设备方向的适配问题。随着iOS8及后续版本的发布,AutoLayout的重要性日益凸显,特别是在iOS5的支持...
作者以通俗易懂的语言,介绍了iOS开发的基本概念,如UIKit、AutoLayout、Delegate等,并分享了自己在实际项目中使用iOS开发的经验和心得。 适用人群:这篇文章适用于所有对iOS开发感兴趣的人,特别是移动应用开发的...
3. UI设计:使用Interface Builder或SwiftUI来创建用户界面,学习AutoLayout和Size Classes实现响应式布局,确保应用在不同设备上适配良好。 4. Swift基础:深入学习Swift语法,包括变量、常量、函数、类、结构体、...
描述中的内容同样简洁,强调了 ZIP 文件的内容主要是作者的学习心得与笔记,而 README 文件将作为这些内容的索引或指南。 标签 "swift macos ios" 指出这些笔记主要与苹果生态相关的技术有关,包括 Swift 编程语言...
使用AutoLayout设置Cell内元素的约束,确保在不同屏幕尺寸下都能正确显示。在自定义Cell的子类中,使用`layoutSubviews()`方法添加和调整约束。 6. 响应式设计: 考虑到用户体验,可能需要在Cell中添加一些交互...
3. **社区交流**: 加入Stack Overflow、GitHub等社区,与其他开发者交流心得,解决实际开发中遇到的问题。 通过上述步骤的学习,你将能够建立起扎实的iOS开发基础,并逐步成长为一名合格的iOS开发者。不断实践和...