Прямо сейчас у меня есть слой Gradient Gradient, где я установил цвета, но я хотел бы установить цветную точку (вместо верхнего центра, вверху слева) и снизу до (вместо нижнего центра на внизу справа), чтобы немного изменить ситуацию. Мысли? Ниже приведен код, который у меня есть до сих пор ... Я включил базовую анимацию, потому что я анимация между цветами.Как изменить цветные точки CAGradientLayer?
- (id)init {
self = [super init];
UIView *gradientView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.w, self.h)];
[self addSubview:gradientView];
[self sendSubviewToBack:gradientView];
topColor = [UIColor colorWithRed:0.012 green:0.012 blue:0.012 alpha:1];
bottomColor = [UIColor colorWithRed:1.000 green:0.765 blue:0.235 alpha:1];
gradient = [CAGradientLayer layer];
gradient.frame = gradientView.frame;
gradient.colors = [NSArray arrayWithObjects:(id)topColor.CGColor, (id)bottomColor.CGColor, nil];
gradient.locations = [NSArray arrayWithObjects:[NSNumber numberWithFloat:0.0f], [NSNumber numberWithFloat:0.7], nil];
[gradientView.layer addSublayer:gradient];
[self performSelector:@selector(animateColors) withObject:self afterDelay:2.0];
currentColorCount = 1;
return self;
}
Справа (То, что я получил) слева (то, что я хотел)
вы не имели в виду: С левой стороны (То, что я получил) справа (то, что я хотел), так как начальный старт равен 0.5, 0.0, а значение по умолчанию - 0.5, 1.0 – ericosg