Градиентный фон UIScrollView - PullRequest
2 голосов
/ 15 марта 2012

Как добавить градиентный фон в UIScrollView? У меня есть viewcontroller с UIScrollView поверх него. Я хочу добавить градиентный фон в scrollview. У меня также есть градиентное изображение для фона, но оно не полностью соответствует размеру содержимого прокрутки.

Пожалуйста, помогите. Спасибо

Ответы [ 2 ]

8 голосов
/ 15 марта 2012

Ранее я установил 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 drawRect.

1 голос
/ 30 апреля 2012

Загрузить пример проекта по ссылке https://github.com/techiedees/GradientTest.

В нем есть платформа TDGradientView.Просто используйте его для любого проекта.

Вы можете проверить его на http://www.techiedees.com/2012/04/how-to-create-gradient-view-at-run-time.html

...