我有一个导航栏,我想用图像来改变它,我正在实现这个代码
self.navBar.layer.contents = (id)[UIImage imageNamed:@"flower.png"].CGImage;
但背景仍然没有改变。导航栏的层次结构是: - UINavigationBar - UINavigationItem - UISegementControl
我已经在那个层次结构的每个部分都设置了一个出口..有什么问题吗???
我有一个导航栏,我想用图像来改变它,我正在实现这个代码
self.navBar.layer.contents = (id)[UIImage imageNamed:@"flower.png"].CGImage;
但背景仍然没有改变。导航栏的层次结构是: - UINavigationBar - UINavigationItem - UISegementControl
我已经在那个层次结构的每个部分都设置了一个出口..有什么问题吗???
这是我非常成功地使用的内容:
CALayer *backgroundImageLayer;
backgroundImageLayer = [CALayer layer];
backgroundImageLayer.frame = CGRectMake(0, 0, 300, 44);
backgroundImageLayer.backgroundColor = [UIColor redColor].CGColor;
backgroundImageLayer.contents = (id)[[UIImage imageNamed:@"barImage.png"] CGImage];
backgroundImageLayer.zPosition = -5.0;
[myNavigationConroller.navigationBar.layer addSublayer:test];
关键是将 zPosition 设置为 -5.0,尽管任何负值都应该有效。它使 backgroundImageLayer不会干扰 UINavigationBar 的按钮和标签。