在多个视图中使用背景图像到UINavigationController

Joh*_*son 2 iphone cocoa-touch objective-c uiviewcontroller uinavigationcontroller

如何在保持标题的同时为UINavigationController使用背景图像?来自其他线程的ck的答案确实可以放置图像并保留文本.但是如果用户导航到其他视图(使用[navigationController pushViewController]),则只有背景出现在新屏幕中.

如何更改UINavigationController的背景图像,同时在多个视图中保持标题?

Joh*_*son 5

创建一个CustomUIViewController,扩展UIViewController并覆盖viewDidLoad,如下所示:

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg.png"]];
}
Run Code Online (Sandbox Code Playgroud)

之后,在控制器中使用CustomUIViewController.


Ren*_*tik 5

如果您想使用ImageView来缩放它:

UIImageView *imageView = [[UIImageView alloc] initWithFrame:controller.view.bounds];
imageView.image = [UIImage imageNamed:@"aluminium-brushed-metal-background-texture-hd-575x400.jpg"];
imageView.contentMode = UIViewContentModeScaleAspectFill;
[navigationController.view insertSubview:imageView atIndex:0];
Run Code Online (Sandbox Code Playgroud)