navigationBar上的一些操作

Posted techfu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了navigationBar上的一些操作相关的知识,希望对你有一定的参考价值。

设置navigationBar的背景颜色

去掉navigationBar上返回按钮的文字

设置navigationBar上的按钮文字

设置navigationBar上的title文字


- (void)viewDidLoad 
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    //设置navigationBar的背景图片
    //[self.navigationBar setBackgroundImage:[UIImage imageNamed:@"NavigationBarBack"] forBarMetrics:UIBarMetricsDefault];
    [self.navigationBar setBackgroundImage:[self imageWithColor:[UIColor colorWithRed:229/255.0 green:4/255.0 blue:18/255.0 alpha:1]] forBarMetrics:UIBarMetricsDefault];
    //self.navigationBar.backgroundColor = [UIColor greenColor];
    
    //去掉navigationBar返回按钮的文字
    [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
    
    //设置navigationBar上的按钮颜色为白色
    [[UINavigationBar appearance] setTintColor:[UIColor whiteColor]];
    
    //设置navigationBar上的title颜色为白色
    [[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor],NSForegroundColorAttributeName,nil]];
    


- (UIImage *)imageWithColor:(UIColor *)color

    // 描述矩形
    CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
    
    // 开启位图上下文
    UIGraphicsBeginImageContext(rect.size);
    // 获取位图上下文
    CGContextRef context = UIGraphicsGetCurrentContext();
    // 使用color演示填充上下文
    CGContextSetFillColorWithColor(context, [color CGColor]);
    
    // 渲染上下文
    CGContextFillRect(context, rect);
    // 从上下文中获取图片
    UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
    // 结束上下文
    UIGraphicsEndImageContext();
    
    return theImage;


以上是关于navigationBar上的一些操作的主要内容,如果未能解决你的问题,请参考以下文章

NavigationBar标题只更改一次(不再是白色然后返回)

NavigationBar 标题为黑色

iOS 8 中的 NavigationBar 栏、色调和标题文本颜色

探究navigationBar的translucent属性

NavigationBar上的back按钮点击后触发的是哪个函数

设置状态栏颜色