iOS10之后 NavgationBar 透明

作者: 李栖桐 | 来源:发表于2016-12-16 17:07 被阅读139次

    一开始是这样写的 但是升级了iOS10 之后就不好使了

    
    -(void)viewWillAppear:(BOOL)animated{
        [super viewWillAppear:animated];
        self.navigationController.navigationBar.translucent = YES;
        [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsCompact];
        self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init];
        [self.navigationController.navigationBar setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor],UITextAttributeTextColor,nil]];
    }
    
    -(void)viewWillDisappear:(BOOL)animated{
        [super viewWillDisappear:animated];
        self.navigationController.navigationBar.translucent = NO;
        [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
        [self.navigationController.navigationBar setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor blackColor],UITextAttributeTextColor,nil]];
    }
    
    
    navigationBar不透明



    现在透明度是这样的

    - (void)setNavgationBarClear{
        
        self.navigationController.navigationBar.translucent = YES;
        CGRect rect = CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 64);
        UIColor *color = [UIColor clearColor];
        UIGraphicsBeginImageContext(rect.size);
        CGContextRef context = UIGraphicsGetCurrentContext();
        CGContextSetFillColorWithColor(context, [color CGColor]);
        CGContextFillRect(context, rect);
        UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
        [self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
        [self.navigationController.navigationBar setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor],UITextAttributeTextColor,nil]];
    
    }
    
    navigationBar透明

    但是最好上面下面的 都留着 不然navigationBar最下面会有一条线

    相关文章

      网友评论

        本文标题:iOS10之后 NavgationBar 透明

        本文链接:https://www.haomeiwen.com/subject/eennmttx.html