UINavigationBar 设置背景图片
2012-04-18 13:35
411 查看
#import <QuartzCore/QuartzCore.h>
@interface DDNavigationViewController : UINavigationController<UINavigationControllerDelegate>
{
CALayer *_barBackLayer;
}
@end
@implementation DDNavigationViewController
- (id)initWithRootViewController:(UIViewController *)rootViewController
{
self =
[super initWithRootViewController:rootViewController];
self.delegate = self;
return
self;
}
- (void)loadView
{
[super loadView];
UINavigationBar *bar
= self.navigationBar;
CALayer*layer
= [CALayer layer];
UIImage *navBarImage
= [UIImage imageNamed:@"navigationBarBackground.png"];
layer.contents =
(id)navBarImage.CGImage;
layer.frame= CGRectMake(0,
0, 320,
navBarImage.size.height);
[bar.layer insertSublayer:layer atIndex:0];
_barBackLayer =
layer;
}
#pragma mark -
#pragma mark UINavigationControllerDelegate
- (void)navigationController:(UINavigationController *)navigationController
didShowViewController:(UIViewController *)viewController
animated:(BOOL)animated
{
[_barBackLayer removeFromSuperlayer];
[navigationController.navigationBar.layer insertSublayer:_barBackLayeratIndex:0];
}
@end
转至
http://blog.sina.com.cn/s/blog_4cd8dd130100tyek.html
@interface DDNavigationViewController : UINavigationController<UINavigationControllerDelegate>
{
CALayer *_barBackLayer;
}
@end
@implementation DDNavigationViewController
- (id)initWithRootViewController:(UIViewController *)rootViewController
{
self =
[super initWithRootViewController:rootViewController];
self.delegate = self;
return
self;
}
- (void)loadView
{
[super loadView];
UINavigationBar *bar
= self.navigationBar;
CALayer*layer
= [CALayer layer];
UIImage *navBarImage
= [UIImage imageNamed:@"navigationBarBackground.png"];
layer.contents =
(id)navBarImage.CGImage;
layer.frame= CGRectMake(0,
0, 320,
navBarImage.size.height);
[bar.layer insertSublayer:layer atIndex:0];
_barBackLayer =
layer;
}
#pragma mark -
#pragma mark UINavigationControllerDelegate
- (void)navigationController:(UINavigationController *)navigationController
didShowViewController:(UIViewController *)viewController
animated:(BOOL)animated
{
[_barBackLayer removeFromSuperlayer];
[navigationController.navigationBar.layer insertSublayer:_barBackLayeratIndex:0];
}
@end
转至
http://blog.sina.com.cn/s/blog_4cd8dd130100tyek.html
相关文章推荐
- iOS设置UINavigationBar的背景颜色或背景图片
- 给 UINavigationBar 设置背景图片的最简单方法
- UINavigationBar设置背景图片
- 为UINavigationBar设置背景图片的方法
- UINavigationBar设置背景图片
- 如何为UINavigationBar设置背景图片
- iphone iPhone开发中为UINavigationBar设置背景图片方法
- 给 UINavigationBar 设置背景图片的最简单方法
- iPhone开发中为UINavigationBar设置背景图片方法
- 如何为UINavigationBar设置背景图片
- 给 UINavigationBar 设置背景图片的最简单方法
- 如何为UINavigationBar设置背景图片
- iOS设置UINavigationBar的背景颜色或背景图片
- phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护
- C#设置Word文档背景的三种方法(纯色/渐变/图片背景)
- CSS设置背景——图片背景
- android:设置背景图片、背景颜色透明
- 设置背景图片透明度
- ios设置导航栏背景图片、返回按钮背景、标题颜色等等
- 微信小程序background设置背景图片不能用本地图片