您的位置:首页 > 产品设计 > UI/UE

IOS7 UI适配

2013-10-28 12:06 232 查看
昨天下了把手机升级成了IOS7 正式版,然后下了最新的xocde5. 试着编译了一下刚刚完成的几个应用,还好问题不大,半个小时的时间都适配好了,然后改了下几个新出现的warning。过几天等空了,要把IOS7的更新的特性好好看一下 http://www.cocoachina.com/newbie/basic/,记录一下。

Xcode5 正式版的下载地址:http://adcdownload.apple.com/Developer_Tools/xcode_5/xcode_5.dmg
建议用迅雷下,速度还是挺快的。

总结一下(不一定是最好的方法,纯粹是省时间的方法,不至于在ios7的设备上看上去错位,想要充分符合ios7的风格,还是要在设计上做出一定的改变的):

(1)如果应用程序始终隐藏 status bar 那么恭喜呢,你在UI上需要的改动很少很少。

(2)如果应用程序显示status bar,可以讲status bar设置成黑色不透明 ,然后在UIViewController 中加入下面的判断,

[cpp] view
plaincopy

#define IOS7_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"7.0"] != NSOrderedAscending )

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000

if ( IOS7_OR_LATER )

{

self.edgesForExtendedLayout = UIRectEdgeNone;

self.extendedLayoutIncludesOpaqueBars = NO;

self.modalPresentationCapturesStatusBarAppearance = NO;

}

#endif // #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000

(3)如果勾选了Hide during application lauch 的话,在IOS7 的设备上,是没有问题的,

启动完以后status bar 会重新出现的,但是在IOS7 一下的设备,需要在launch didfinish 里面把status bar 显示出来。



(4)可以通过设置view的背景颜色来改变 status bar 的颜色来搭配你的nav 条。

(5) 有些地方肯能要对版本进行判断,分别做不同的处理。

(6) 可以用旧版的sdk来编译,这样在真机上还是和原来一样的效果。具体的方法可以参考:http://github.kimziv.com/blog/2013/09/22/how-to-use-older-base-sdks-in-xcode5/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: