UINavigationBar

UINavigationBar的一些设置

1、navigationBar设置透明:self.navigationController.navigationBar.translucent = NO;

2、navigationBar设置背景图片:[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@""] forBarMetrics:UIBarMetricsDefault];

3、navigationBar隐藏黑线:[self.navigationController.navigationBar setShadowImage:[UIImage new]];

4、navigationBarItem设置位置偏移:

 UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];

 negativeSpacer.width = -10;

 self.navigationItem.leftBarButtonItems = @[negativeSpacer, backItem];

5、navigationBar导航条标题颜色和字体:

[self.navigationController.navigationBar setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:

                                                                     [UIColor colorWithRed:0 green:0.7 blue:0.8 alpha:1], UITextAttributeTextColor,

                                                                     [UIColor colorWithRed:0 green:0.7 blue:0.8 alpha:1], UITextAttributeTextShadowColor,

                                                                     [NSValue valueWithUIOffset:UIOffsetMake(0, 0)], UITextAttributeTextShadowOffset,

                                                                     [UIFont fontWithName:@"Arial-Bold" size:0.0], UITextAttributeFont,

                                                                     nil]];

6、navigationBarItem设置不可用时,显示的效果若希望为灰色则设置Item.titleView为button,设置button不可用时的颜色为灰色;同时设置UIBarButtonItem.leftBarItem不可用时应该设置:

[self.navigationController.navigationBar setUserInteractionEnabled: NO];

而不是:

self.navigationItem.leftBarItem.enable = no;

或者设置一个全局的UIBarButtonItem,然后:

UIbarButtonItem.enable = no;

 

posted @ 2015-11-04 18:13  老茶叶  阅读(123)  评论(0)    收藏  举报