iOS 9 分屏功能碎碎念

当 iOS 9 还处于测试阶段的时候,作为iOS开发者,已经奔赴到了新系统的最前线。

最让人期待的莫过于 iOS 9 的分屏功能,但是,对于开发者来说,特别是对于第一批适配 iOS 9 的开发者来说并不能说是一件幸福的事。因为“测试版”意味着“坑”,而无数的“测试版”意味着无数的“坑”。在iPhone或者iPad上安装 iOS 9 也许并无法感受到这其中的艰苦。这份艰苦来自于 XCode 和 OS X。XCode 已经升级到 Xcode 7 beta 4,而 OS X 也不知不觉地升级到 beta 6。在这些版本之间适配就已经让人抓狂,更不用说偶尔的不兼容以及模拟器的不断崩溃。也许某一次更新就会导致你整个模拟器无法使用,接下来就是无尽的恢复系统和更新应用。

这是开发环境最基本的坑。接下来就是 iOS 9 产品级别的坑了。iOS 9 引入了分屏的概念,屏幕可以被切割成几种不同的类型。这个改进导致了界面需要对各种屏幕进行适应。简单的应用还好,复杂的应用、特别是对用户交互进行过优化的应用在这方面的改动阻力会特别大。原因很简单,原来的 iPad 只分横竖屏,大部分的阅读类应用可能在这方面没有特别的需求,但编辑类等交互比较多的应用需要对横竖屏进行优化。然而,分屏却一下子打破了这种布局。横屏状态下依旧会出现窄竖屏,本来针对iPad的大屏优化一下子不复存在。

以上还是产品级别的。代码级别上的,苹果对屏幕的区分是有限的,甚至横屏的三分之一和二分之一也是同个类型的屏幕。在适配而不是改版的过程中,如果产品要求必须区分这两种类型的屏幕,那就只能暗自诉苦了。再者,iPad上 iOS 9 支持分屏的应用不再区分转屏功能,也就是说,无法强制锁定屏幕,锁定屏幕只能由用户主动锁住。

好在,苹果并没有强制所有应用都必须支持分屏功能。不支持分屏功能的应用不会进入分屏列表,而且也无法产生其他分屏。

就我目前接触的情况来说,分屏对产品的影响远大于对技术产生的影响。

对技术来说,我们只需要对各种屏幕类型加以区分,并显示不同的界面。iOS界面开发早就引入了自动布局的概念,在分屏这一块,自动布局起了很大的作用。如果产品要强行区分各种屏幕,也能够强制判断区分。不过很多 iOS 9 的新API倒是容易让开发者掉进坑里。不过这种坑倒是掉几次就习惯了。

而对于产品来说,如果想要适配分屏功能,则基本需要对整个产品进行重新设计。有分屏和没分屏的iPad应用是不一样的,这个不一样体现在交互上。一款好的应用往往需要针对不同的使用场景进行特定优化,而如果无法进行这类优化,那这款产品就会退居平庸。然而,iPhone和iPad的交互是截然不同的,而iPad的宽屏和窄屏必然也需要区分,如此大的工作量,以及在同个设备上不同屏幕的适配区分,对一款产品来说是一项巨大的挑战。

本来我以为这是第一次产品跟着技术走,但仔细想想,每次产品都是跟着技术走,一旦技术稳定,就开始寻求突破。从抽屉式界面、Tabbar界面,到此次的分屏适配,其实都是产品在当前技术上的优化和改进。导航太多,就用抽屉式界面,大屏手机出现,就可能需要回归Tabbar模式,甚至需要思考其他模式来突破当前的使用习惯。而分屏,则要求产品设计不再拘泥于特别的屏幕尺寸,而是针对不同类型的屏幕来设计。

总的来说,适配新系统,很苦,但至少有一次,我们走在了较前沿。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,261评论 4 61
  • 你是看不见爱人的瞎子,我是说不了情话的哑巴。 瞎子爱着哑巴,心里有一万个他。 哑巴爱着瞎子,藏着一万句说不出的话。...
    Qb汐阅读 634评论 1 2
  • 面试中被问到,如果你与你的领导意见不一致时,你会怎么处理?当然是怼回去认真想,如果在职场中,真的出现了这种情况,我...
    码农王先生_阅读 22,300评论 1 2
  • 清晨,窗外阳光明媚,微风习习,小屋内清清亮亮,安静祥和。我泡上一壶上好的金骏眉,顿时满屋飘起了清香,沁人心脾,我们...
    古风心理咨询阅读 848评论 0 12