ios--ios6与ios7界面兼容(解决方案)

来源:互联网 发布:c语言9天轻松掌握 编辑:程序博客网 时间:2024/05/22 01:36

原文转自:http://blog.csdn.net/amazingrace/article/details/20144235


iOS6的程序在iOS7上运行时,界面整体上移了20pix,解决的思路有二:一是运行时选择iOS6的SDK,这样在iOS7上界面与iOS6是一样的,步骤看这里,这样的好处是不用动代码,不过从长远看还是要配合iOS7的风格的。二是修改代码。

在根页面viewDidLoad方法里添加如下代码,就是程序运行的第一个界面。

self.navigationController.navigationBar.translucent = NO;

这样界面正常了,但是我用的导航栏的字体颜色变成了黑色,很不好看。

在导航栏第一次出现的页面viewDidLoad方法里添加如下代码,可以把字体颜色修改成白色。

self.navigationController.navigationBar.titleTextAttributes =   [NSDictionary dictionaryWithObject:[UIColor whiteColor]   forKey:UITextAttributeTextColor];

参考语录:

1、

楼主,我要提醒你两点,第一是分别处理IOS6和IOS7就可以解决你的问题了。第二是Constraints属性必须取消,就是不能用,否则在IOS6以下的手机上必然崩溃,这个属于必须取消!因为现在IOS5还是主流!

感谢楼上两位,我取消autolayout之后整个布局表的一塌糊涂,跳了半天调不好
好在两位告知了问题原因,重建一个项目不再使用autolayout了,target也改成ios5,这样就没问题了


参考资料:

http://www.myexception.cn/operating-system/1470796.html

http://my.oschina.net/megan/blog/167500

http://stackoverflow.com/questions/19105766/ios-7-status-bar-collides-with-navigationbar?lq=1

http://stackoverflow.com/questions/18294872/ios-7-status-bar-back-to-ios-6-style/19044681#19044681


0 0
原创粉丝点击