【问题标题】:Not displaying color and data in IOS 5在 IOS 5 中不显示颜色和数据
【发布时间】:2011-12-20 10:55:53
【问题描述】:

我在 Xcode 4 中针对 iOS 4.3 实现了自定义导航栏和工具栏,现在正在更新针对 iOS 5 的 xcode 4.2。在 iOS 5 中,自定义不起作用,但每当我使用 iOS 4.3 模拟器时,它都可以正常工作。

提前致谢

【问题讨论】:

  • 对于您的问题,唯一可以给出的答案是:“出了点问题”。您没有提供足够的信息 - 您的“自定义导航栏和工具栏”在做什么?哪些“定制的东西”不起作用,它们是如何不起作用的?您是否尝试过调试设置断点并单步执行您的代码?

标签: iphone ios5 uinavigationbar uitoolbar


【解决方案1】:

您是否使用drawRect类别方法自定义导航栏?

如果是这样我也有同样的问题,在IOS 5中drawRect方法没有被调用,IOS5现在已经内置了自定义导航栏的功能。

IOS5有一个新的外观属性可以用来自定义它,所以我做的是检查外观属性是否存在,如果存在则需要使用新的外观方法。

所以我仍然有在 IOS 版本

我的 viewDidLoad 方法如下所示,用于设置导航栏的背景:

if ([self.navigationController.navigationBar respondsToSelector:@selector(appearance)]){
    [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"HeaderBar.png"] forBarMetrics:UIBarMetricsDefault];
}

您还可以使用以下代码为您的 appDelegate 中的所有导航栏设置 Appearance 对象:

if ([UINavigationBar respondsToSelector:@selector(appearance)]){
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"HeaderBar.png"] forBarMetrics:UIBarMetricsDefault];
}

上面的代码是设置 UINavigationBar 类的外观,而不是导航栏的单个实例。这意味着 IOS 会将外观应用到所有导航栏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-14
    • 1970-01-01
    相关资源
    最近更新 更多