如何向UIScrollView添加渐变背景?我有一个带有UIScrollView的viewcontroller。我想为scrollview添加渐变背景。我也有背景的渐变图像,但它不完全符合滚动视图的内容大小。
请帮忙。 感谢
答案 0 :(得分:8)
我之前已将UIScrollView
backgroundColor
设置为清除,然后在滚动视图后面放置了一个渐变视图。然后在UIView
上绘制一个渐变,如:
- (void)drawRect:(CGRect)rect
{
CGContextRef currentContext = UIGraphicsGetCurrentContext();
CGGradientRef glossGradient;
CGColorSpaceRef rgbColorspace;
size_t num_locations = 2;
CGFloat locations[2] = { 0.0, 1.0 };
CGFloat components[8] = { 0.119, 0.164, 0.192, 1.000, // Start color
0.286, 0.300, 0.307, 1.000 }; // End color
rgbColorspace = CGColorSpaceCreateDeviceRGB();
glossGradient = CGGradientCreateWithColorComponents(rgbColorspace, components, locations, num_locations);
CGRect currentBounds = self.bounds;
CGPoint topCenter = CGPointMake(CGRectGetMidX(currentBounds), 0.0f);
CGPoint midCenter = CGPointMake(CGRectGetMidX(currentBounds), CGRectGetMaxY(currentBounds));
CGContextDrawLinearGradient(currentContext, glossGradient, topCenter, midCenter, 0);
CGGradientRelease(glossGradient);
CGColorSpaceRelease(rgbColorspace);
}
我不知道在UIScrollView
的{{1}}中直接绘制渐变的效果会是什么。
答案 1 :(得分:1)
从https://github.com/techiedees/GradientTest链接下载示例项目。
它有TDGradientView框架。只需将它用于任何你想要的项目。
您可以在http://www.techiedees.com/2012/04/how-to-create-gradient-view-at-run-time.html
查看