美文网首页
iOS 13导航栏和状态栏设置背景渐变色

iOS 13导航栏和状态栏设置背景渐变色

作者: 听风c | 来源:发表于2023-09-05 16:37 被阅读0次

    在iOS13以上设置系统导航栏背景色

    if (@available(iOS 13.0, *)) {
                // Create a navigation bar appearance
                UINavigationBarAppearance *navigationBarAppearance = [[UINavigationBarAppearance alloc] init];
                [navigationBarAppearance configureWithDefaultBackground];
    
                // Create a gradient layer
                CAGradientLayer *gradientLayer = [CAGradientLayer layer];
                gradientLayer.colors = @[(id)[UIColor blueColor].CGColor, (id)[UIColor greenColor].CGColor]; // Customize the gradient colors
                gradientLayer.startPoint = CGPointMake(0.0, 0.0); // Gradient start point
                gradientLayer.endPoint = CGPointMake(1.0, 0.0);   // Gradient end point
    
                // Apply gradient layer to the navigation bar background
                navigationBarAppearance.backgroundEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight]; // Add blur effect
    
                // Create an image renderer
                UIGraphicsImageRenderer *renderer = [[UIGraphicsImageRenderer alloc] initWithSize:CGSizeMake(1, 1)];
                UIImage *backgroundImage = [renderer imageWithActions:^(UIGraphicsImageRendererContext * _Nonnull context) {
                    gradientLayer.frame = CGRectMake(0, 0, context.format.bounds.size.width, context.format.bounds.size.height);
                    [gradientLayer renderInContext:context.CGContext];
                }];
    
                navigationBarAppearance.backgroundImage = backgroundImage;
    
                // Set the navigation bar appearance
                controller.navigationController.navigationBar.standardAppearance = navigationBarAppearance;
                controller.navigationController.navigationBar.scrollEdgeAppearance = navigationBarAppearance;
            }
    

    效果:


    11.png

    相关文章

      网友评论

          本文标题:iOS 13导航栏和状态栏设置背景渐变色

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