当前位置 : 主页 > 手机开发 > ios >

ios – 自定义UINavigationBar可在模拟器上运行,但不适用于已发布的版本

来源:互联网 收集:自由互联 发布时间:2021-06-11
我希望能够深入了解一个过去几个小时我一直在努力解决的问题.我有一个自定义UINavigationBar正在应用程序中配置:DidFinishLaunchingWithOptions通过调用以下方法: [[UINavigationBar appearance] se
我希望能够深入了解一个过去几个小时我一直在努力解决的问题.我有一个自定义UINavigationBar正在应用程序中配置:DidFinishLaunchingWithOptions通过调用以下方法:

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"NavBar"] forBarMetrics:UIBarMetricsDefault];

当我在XCode中运行我的应用程序时(无论是在模拟器中还是在插入计算机的实际设备上),这都很有效,并显示我的自定义背景.但是,当我在TestFlight上运行应用程序的发布版本时,会显示标准的浅蓝色导航栏.在搞乱了setBackgroundImage方法的放置之后没有运气,我开始相信它与“调试”与“发布”设置的差异有关,但我对这些设置导致此导航条问题的位置毫无头绪.

任何帮助或洞察这个问题(或我将如何调试它)将不胜感激.先感谢您!

正如我的评论中提到的,当您遇到类似的问题时,您应该检查图像的名称并确保它不区分大小写.您可能添加了名为navBar的图像,但您在项目中使用的是NavBar.这就是这个问题的原因.模拟器不区分大小写,但设备是.

要么将代码更改为,

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navBar"] forBarMetrics:UIBarMetricsDefault];
网友评论