UINavigationBar – 设置背景图片?
所以我有一个UINavigationController的类别,我重写init方法,如下所示
- (id)initWithFrame:(CGRect)frame { if (self = [super initWithFrame:frame]) { UIImage *image = [UIImage imageNamed:@"navBar.png"]; [[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault]; } return self; }
以下代码导致导航栏的背景图像变为空白(白色)。 图像名称正确,它存在于项目中。 知道是什么导致了这个问题吗?
如果您使用iOS4,则可以覆盖 – (void)drawRect
@implementation UINavigationBar (UINavigationBarCategory) - (void)drawRect:(CGRect)rect { UIImage *navBg = [UIImage imageNamed:@"navBar.png"]; [navBg drawInRect:rect]; } @end
iOS 5,
if ([[UIDevice currentDevice].systemVersion floatValue] >= 5.0) { if ([self.navigationController.navigationBar respondsToSelector:@selector( setBackgroundImage:forBarMetrics:)]){ UIImage *navBarImg = [UIImage imageNamed:@"navBar.png"]; [self.navigationController.navigationBar setBackgroundImage:navBarImg forBarMetrics:UIBarMetricsDefault]; } }
- Frida小工具补丁(异议)问题和解决方案的集合
- 如何使应用程序完全正确工作在iOS 6自动旋转?
- MPMoviePlayerController不播放从UIImagePickerController中选取的电影
- 如何隐藏UITableView中的空行,并根据非空行更改Uitableview的高度
- 以编程方式从IOS中的configuration文件中检索数据
- 在xcode 7.3.1中使用未parsing的标识符'GMSPlacesClient'
- NSXMLParser忽略某些标记之间的文本
- 苹果是否提供了它使用的本地化术语的索引?
- iOS – Firebase错误:使用未parsing的标识符FIRApp运行提供的代码