在navcontroller中,我在viewDidLoad中放入了这段代码:
NSNumber *screenWidth = @([UIScreen mainScreen].bounds.size.width);
NSString *imageName = [NSString stringWithFormat:@"testImg_%@w@2x.jpg", screenWidth];
UIImage *image = [UIImage imageNamed:imageName];
[[self navigationBar] setFrame:CGRectMake(0, 0, self.view.frame.size.width,image.size.height)];
[[self navigationBar] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
然后我以root视图控制器一个表视图。一切正常但如果我禁用半透明选项,那么表格会进入自定义导航栏。 任何想法?
更新 在设置图像之前,我还用颜色设置背景,这解决了我的初始问题:
[self.navigationBar setBackgroundColor:[UIColor whiteColor]];