【发布时间】:2013-10-26 08:47:02
【问题描述】:
不幸的是,我无法通过在 UIView 中绘制径向渐变来找到解决方案。
看...这就是我想画的方式(这是在PS中制作的):
但我目前被困在这个问题上:
这是我的代码:
CGGradientRef radialGradient;
CGColorSpaceRef rgbColorspace;
size_t num_locations = 2;
CGFloat locations[2] = { 0.0, 1.0 };
const CGFloat *colorComponents = CGColorGetComponents(textColor.CGColor);
CGFloat components[8] = { colorComponents[0], colorComponents[1], colorComponents[2], 1.0, // Start color
1.0, 1.0, 1.0, 1.0 }; // End color
rgbColorspace = CGColorSpaceCreateDeviceRGB();
radialGradient = CGGradientCreateWithColorComponents(rgbColorspace, components, locations, num_locations);
CGRect currentBounds = self.bounds;
CGPoint midCenter = CGPointMake(CGRectGetMidX(currentBounds), CGRectGetMidY(currentBounds));
CGContextDrawRadialGradient(myContext, radialGradient, midCenter, 8.0, midCenter, 1.0, kCGGradientDrawsAfterEndLocation);
CGGradientRelease(radialGradient);
CGColorSpaceRelease(rgbColorspace);
我希望有人能给我正确的提示;)
周末愉快, 克里斯
【问题讨论】:
-
您是否尝试过使用超过 2 个位置?
-
不...让我测试一下:)
标签: ios objective-c uiview gradient