rickytan / RTRootNavigationController

Implicitly make every view controller has its own navigation bar
MIT License
2.15k stars 379 forks source link

初始的时候无法设置背景图片 #179

Open Hoony-HU opened 6 years ago

Hoony-HU commented 6 years ago

我的默认的初始状态是一个渐变的背景色使用的是一张图片 但是没有效果

rickytan commented 6 years ago

设置了谁的背景图?如何设置的?

Hoony-HU commented 6 years ago

就是我发现在实现了drawRect:的时候就算调用 了super,setBackgroundImage:forBarMetrics:这个方法会失去效果。

rickytan commented 6 years ago

drawRect: 中只能调 [super drawRect:],外加自己的绘制代码

Hoony-HU commented 6 years ago

我知道啊 怎莫说呢 我在创建NavgationController的时候设置的,但是没有效果。我还是自己看看源码吧。看完再说

rickytan commented 6 years ago

代码放一下

rickytan commented 6 years ago

这个东西的设置最好在 -viewDidLoad 中,除非你确定知道自己在干什么

Hoony-HU commented 6 years ago
UIImage * image = [UIImage hoo_imageWithColor1:[UIColor hoo_colorWithHexString:@"#4293ee"] color2:[UIColor hoo_colorWithHexString:@"#42b3ee"]];
// 设置背景图片
[navVC.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
Hoony-HU commented 6 years ago

我想在保有区别的同时带有部分统一

rickytan commented 6 years ago

在你的内容 vc 的 -viewDidLoad 中试试?

- (void)viewDidLoad
{
  [super viewDidLoad];

  [self.navigationController.navigationBar setBackgroundImage: xxx];
}