我有一个带有autolayout的obj-c应用程序(iPhone 4s到6 plus兼容)在iOS7(设备和模拟器)中运行正常,当我在iOS 8及以上版本上运行它仍然运行正常但我收到以下错误在控制台中。
*** NSKeyedArchiver warning: replacing existing value for key 'UIScale'; probable duplication of encoding keys in class hierarchy
*** NSKeyedArchiver warning: replacing existing value for key 'UIImageOrientation'; probable duplication of encoding keys in class hierarchy
*** NSKeyedArchiver warning: replacing existing value for key 'UIHasPattern'; probable duplication of encoding keys in class hierarchy
*** NSKeyedArchiver warning: replacing existing value for key 'UIRenderingMode'; probable duplication of encoding keys in class hierarchy
问题是我在代码中没有使用任何密钥或NSKeyedArchiver,因此我无法真正了解这些密钥的来源以及应用程序正常运行的确切含义。< / p>
我使用了几个框架和pod,所以我认为这可能会导致他们的购买,我认为它可能是iAD(我使用本机框架与Apple提供的简单设置WWDC视频),控制台错误时加载的其他框架/ pod是MKNetworkKit和Google Analytics。
有没有人体验过这些? 或者你有任何进一步调查的线索?
感谢。
答案 0 :(得分:1)
我想出来了。 这个问题与appDelegate中我使用的图像是navigationBar有关。
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navBarBkg"] forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor colorWithRed:1 green:1 blue:1 alpha:1]}];
我对这些行进行了评论,并通过Interface Builder更改了navigationBar。我不再犯这些错误了。