7

有没有办法让 iOS 6 中的导航栏元素(后退按钮)看起来像 iOS 7 中的导航栏元素?还有按钮和其他 iOS 7 UI 元素。

4

2 回答 2

8

我建议不要将代码放入您需要自定义的每个视图控制器中,而是通过application:didFinishLaunchingWithOptions:在 App Delegate 中的方法中放入类似的内容来为整个应用程序执行此操作

// Nav bar
[[UINavigationBar appearance] setBackgroundImage:[[UIImage imageNamed:@"navBar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 5, 10, 5)] forBarMetrics:UIBarMetricsDefault];

// Back buttons
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[UIImage imageNamed:@"backNavButton.png"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

// Toolbar
[[UIToolbar appearance] setBackgroundImage:[[UIImage imageNamed:@"toolbar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 5, 10, 5)] forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
于 2013-10-04T12:33:51.570 回答
0

您可以通过像这样设置背景图像来自定义导航栏

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"topbar.png"] forBarMetrics:UIBarMetricsDefault];

您可以像这样使用 setLeftBarButtonItems 方法添加自定义栏。

[self.navigationItem setLeftBarButtonItems:];
于 2013-10-04T11:12:32.083 回答