自定义UINavigationBar和DRY规则

时间:2013-04-13 21:22:55

标签: objective-c uinavigationbar

我有很多与更改UINavigationBar元素相关的代码。我必须在几乎每个视图控制器中使用它,并且每次我需要使用视图标题设置自定义UILabel titleLabel

在许多视图中使用此代码而不重复相同代码的最佳方法是什么?我应该创建另一个类然后将其导入我的视图控制器并使用该类中的方法每次设置标题吗?

2 个答案:

答案 0 :(得分:2)

您可以通过执行以下操作全局设置外观设置:

UINavigationBar *navigationBar = [UINavigationBar appearance];
[navigationBar setBackgroundImage:[UIImage imageNamed:@"nav-background"] forBarMetrics:UIBarMetricsDefault];

我从开源cheddar应用程序的appdelegate获取此代码片段:

https://github.com/nothingmagical/cheddar-ios/blob/master/Classes/CDIAppDelegate.m

希望这有帮助!

答案 1 :(得分:1)

我会创建一个UIViewController的子类,包含所有'常见'的东西,并让所有特定的视图控制器继承它。