iOS7 适配问题
总结一下(不一定是最好的方法,纯粹是省时间的方法,不至于在ios7的设备上看上去错位,想要充分符合ios7的风格,还是要在设计上做出一定的改变的):
(1)如果应用程序始终隐藏 status bar 那么恭喜呢,你在UI上需要的改动很少很少。
(2)如果应用程序显示status bar,可以讲status bar设置成黑色不透明 ,然后在UIViewController 中加入下面的判断,
[cpp] view plaincopy
1. #define IOS7_OR_LATER ( [[[UIDevice currentDevice] systemVersion] compare:@"7.0"] != NSOrderedAscending )
2.
3. #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
4. if ( IOS7_OR_LATER )
5. {
6. self.edgesForExtendedLayout = UIRectEdgeNone;
7. self.extendedLayoutIncludesOpaqueBars = NO;
8. self.modalPresentationCapturesStatusBarAppearance = NO;
9. }
10. #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/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.