【问题标题】:Radial gradient background programmatically in UIViewController在 UIViewController 中以编程方式径向渐变背景
【发布时间】:2013-06-09 13:44:31
【问题描述】:

我研究了很多,但找不到合适的解决方案。我想为适合 iPhone 4 和 iPhone 5 屏幕的UIViewController 添加径向背景(查看附件截图)。背景应该以编程方式完成,因为我有几个高度超过 view.bounds 的 Scrollview。

有人知道解决办法吗?

【问题讨论】:

    标签: ios uiview background gradient radial


    【解决方案1】:

    您可以采用两种不同的方式来实现这一目标。

    简单的方法。如果您有图片(您发布了屏幕截图),请将其包装成UIImageView。 完成后,您可以将其添加为控制器 view 的子视图,如下所示将其发送回。

    UIImageView* radialImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"radialBackground"]];
    [radialImage setFrame:[[self view] bounds]];
    [[self view] addSubview:radialImage];   
    [[self view] sendSubviewToBack:radialImage];
    

    不简单的。创建一个自定义UIView(例如命名为RadialBackgroundView)并覆盖drawRect:方法。

    - (void)drawRect:(CGRect)rect
    {
        // Take a look to CGContextDrawRadialGradient to draw radial gradient
    }
    

    您可以像使用简单图像一样使用它。

    RadialBackgroundView* radialView = [[RadialBackgroundView alloc] initWithFrame:[[self view] bounds]];
    [[self view] addSubview:radialView];    
    [[self view] sendSubviewToBack:radialView];
    

    【讨论】:

    • 对不起,我忘了提,我想以编程方式创建一个像附加图像一样的径向背景。我在尝试 CGContextDrawRadialGradient 时感到非常困惑。
    猜你喜欢
    • 2014-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-21
    • 1970-01-01
    • 1970-01-01
    • 2014-02-13
    相关资源
    最近更新 更多