适配iOS7开发2

转载 2013年12月03日 17:07:54

来源:http://www.ifun.cc/blog/2013/09/28/gua-pei-ios7kai-fa-2/

在前一篇文章中介绍了非autolayout模式下iOS7的适配工作。 今天来介绍一下autolayout下的适配工作。

首先,我们用xcode4.6.3创建一个simgle view application. 选中Use storyboard.

拖一个UIButton到view中。 由于开启了autoLayout, 在xcode4.6.3中,自动会有两个auto layout约束,分别是水平与垂直的约束:


运行程序效果:



可以看到是垂直方向上距status bar底部是45px,距右边是186px.

现在我们用xcode5打开这个工程。会提示Upgrade storyboard,我们点击Upgrade. Upgrade后,你会发现,垂直方向上有变化了,约束是从顶部开始,不是从status bar底部开始计算。这也我们想要的结果不一样,我们还是希望约束是从status bar底部开始计算。

仔细看看storyboard中的View Controller, 你会发现,这儿多了两个东东,分别是Top Layout Guide,Bottom Layout Guide. 

选在我们的button,按住control键,然后拖到Top Layout Guide上,在弹出的对话框选择Vertical spacing



这样又建立了一个垂直约束,你会发现这个约束是从Status bar底部开始计算的。这个约束有点像是我们需要的, 
但是这个约束距status bar是25px,我们想要的是45px. 那只需要修改一下,将25px改为45px 
你会发现有storyboard中有红色提示,这说明约束条件发生了冲突,因为垂直约束的值都为45,显示冲突了。由于我们只需要status bar底部开始计算的那个约束,所以我们将旧的那个删掉即可。 

现在分别选择iOS6/iOS7来运行。都是距status bar下面45px显示button. 适配工程完成。

顺便介绍一下xcode5中,用xib或storyboard布局的时候,preview iOS7与iOS7以前版本的效果。 快捷键:option+command+enter 打开Assistant editor,然后选择右边的automatic->preview->xxxxx(preview)



然后在出现的画面下面有一个切换iOS7与以前版本的切换开关



这样可以方例你实时的查看布局效果以适配不同版本的iOS.

最后: auto layout是好东西,虽然只有>iOS6的版本才支持,但是我还是建意大家用auto layout,因为以后苹果也可能出现多种屏幕,到时候代码修改量将会减少。

参考:https://developer.apple.com/library/ios/qa/qa1797/_index.html


iOS7适配问题总结

一、状态栏(statusBar) 在iOS7中view默认是全屏模式,状态栏的高度也加在了view的高度上,例如iOS7之前iphone5中self.view.frame.siz...
  • lianbaixue
  • lianbaixue
  • 2014年02月12日 15:51
  • 10535

iOS7适配——导航栏问题

这几天在适配iOS7时,导航栏出现了问题。问题是iOS7后状态栏透明了,导航栏的高度变成了64,而本来的图片只有47,在ios6上没问题在ios7上出现了平铺效果,中间多了一条显眼的黑线,如 后来查...
  • lcg0412
  • lcg0412
  • 2013年11月20日 14:50
  • 3532

iOS6和iOS7代码的适配(1)

苹果的iOS7推出后,对于所有的应用来说都提出了一个天然的需求——适配不同版本的SDK。目前来说,用iOS6的SDK生成的应用,可以在iOS7的系统上跑,UI上也保持了原来的风格样式,这是苹果做的向下...
  • sakulafly
  • sakulafly
  • 2014年01月03日 22:03
  • 15137

《iOS开发指南》第二版 iOS7版-源码-样章-目录,感谢大家一直以来的支持

《iOS开发指南-从0基础到AppStore上线》第二版 iOS7版正式出版了 感谢大家一直以来的支持! 改版后采用全新的ios 7 api,详细介绍了最新的ios 7 开发相关的知识点,全部案例...
  • tonny_guan
  • tonny_guan
  • 2014年03月20日 17:01
  • 5764

适配iOS7开发2

引用http://www.ifun.cc/blog/2013/09/28/gua-pei-ios7kai-fa-2/ 在前一篇文章中介绍了非autolayout模式下iOS7的适配工...
  • miemie1320
  • miemie1320
  • 2013年10月22日 18:12
  • 2879

适配iOS7开发2

在前一篇文章中介绍了非autolayout模式下iOS7的适配工作。 今天来介绍一下autolayout下的适配工作。 首先,我们用xcode4.6.3创建一个simgle view appli...
  • u011602734
  • u011602734
  • 2013年12月11日 11:05
  • 378

IOS研究之iOS7适配的使用详细说明

 近日,我对项目进行了iOS7适配,迟迟没有使用7.0SDK是因为旧工程使用iOS7.0有一些问题,趁着这次机会,我详细整理了适配iOS7需要注意的几个地方。记录如下: 一,iOS7 UITa...
  • donghong2008
  • donghong2008
  • 2014年07月21日 14:27
  • 4750

Xcode8 支持 iOS7及以下版本

Xcode8 支持 iOS7及以下版本
  • skylin19840101
  • skylin19840101
  • 2016年10月17日 18:22
  • 3114

适配ios7的时候仿UIAlertView弹框效果,修改内部的label和button的属性

今天适配ios7的时候,需要有一个弹框的效果  在xcode8(ios10)还没有出来的现在,还得苦逼的适配ios7,里面就有一些让人无语的坑,其中弹框效果就是一个,对于想要实现自定义弹框的效果是需...
  • LIUitcast
  • LIUitcast
  • 2016年07月22日 22:01
  • 2093

很好用的ios7开源项目

http://www.cocoachina.com/industry/20130701/6515.html zhe'g
  • shijikl
  • shijikl
  • 2014年09月30日 09:15
  • 1032
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:适配iOS7开发2
举报原因:
原因补充:

(最多只允许输入30个字)