Я хочу установить градиентный фон для моего ImageView. Я нашел решение для этого здесь в Stack Overflow. Но это не удовлетворяет мои потребности.Установите градиентный фон для ImageView, вращение
Я хочу, чтобы градиент был слева направо. С моим кодом, который я нашел, я могу только заполнить его сверху донизу.
Я создаю слой градиента с этим кодом:
+ (CAGradientLayer *)colorGradientWithColor:(UIColor *)color
{
UIColor *colorOne = color;
UIColor *colorTwo = [UIColor colorWithRed:1.0f green:1.0f blue:1.0f alpha:0.0f];
NSArray *colors = [NSArray arrayWithObjects:(id)colorOne.CGColor, colorTwo.CGColor, nil];
NSNumber *stopOne = [NSNumber numberWithFloat:0.0];
NSNumber *stopTwo = [NSNumber numberWithFloat:0.9];
NSArray *locations = [NSArray arrayWithObjects:stopOne, stopTwo, nil];
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.colors = colors;
gradientLayer.locations = locations;
return gradientLayer;
}
Затем добавить слой к моему UIImageView
:
CAGradientLayer *gradientLayer = [BackgroundGradient colorGradientWithColor:difficultyColor];
gradientLayer.frame = myImageView.bounds;
[myImageView.layer insertSublayer:gradientLayer atIndex:0];
И вот результат:
И здесь моя настройка интерфейса:
Как вы можете видеть, есть два UIImageViews
. Я хочу повернуть слой в виде градиента, поэтому он идет слева направо, а не как сейчас.
Со следующим фрагментом кода я могу повернуть все ImageView
. Это единственный вид решает мою проблему, но я не хочу этого, потому что это вроде разрушает мой интерфейс ..
myImageView.transform = CGAffineTransformMakeRotation(M_PI*1.5f);
Поэтому в основном я искал решение, чтобы сделать градиент слева направо, а не от сверху вниз.
У вас есть идеи? Я новичок в XCode и буду благодарен за каждый совет!
действительно полезно, спасибо !! – Pawan