2016-12-16 1 views
0

Привет, у меня есть рабочие слайд-шоу с CALayer(), и я хочу добавить Brown цветную маску поверх изображений с alpha значением. Мои коды CALayer() ниже.Как добавить цвет над CALayer() с альфа-значением?

let imageLayer = CALayer() 
    imageLayer.contents = image.cgImage 
    imageLayer.anchorPoint = CGPoint.zero 
    imageLayer.bounds = CGRect(origin: CGPoint.zero, size: optimus) 
    imageLayer.position = origin 
    imageView.layer.addSublayer(imageLayer) 

Полный код вы можете посмотреть здесь; https://github.com/Gatada/JBKenBurnsView/blob/master/KenBurns/JBKenBurnsView.swift Посмотрите на 281-286 строк между

Спасибо!

+0

Не могли бы вы добавить немного большей ясности в описание проблемы? Какой эффект вы пытаетесь получить - добавив * коричневый оттенок * над изображениями или какой-то анимацией? Что еще вы пробовали? Каким образом они потерпели неудачу? Кроме того, рассмотрите возможность использования CISepiaTone или другого фильтра CI для эффекта, который вы хотите. – dfd

+0

@dfd добавил некоторые коды и теперь добавил коричневый цвет поверх изображения, но для слайда нужно немного починить, посмотри на чат ниже под вопросом. – SwiftDeveloper

ответ

1

Попробуйте вот так.

imageLayer.backgroundColor = UIColor.brown.withAlphaComponent(0.8).cgColor //Set alpha you want 

Edit: С вашего редактирования кода вам необходимо установить imageLayer2 кадр, как это.

imageLayer2.frame = imageView.bounds 
+0

Я добавил, но никаких действий, вы можете увидеть все коды здесь https://github.com/Gatada/JBKenBurnsView/blob/master/KenBurns/JBKenBurnsView.swift посмотреть строку 281-286 ty – SwiftDeveloper

+0

Я хочу добавить это слайд-шоу коричневый слой с альфа-значением. – SwiftDeveloper

+0

@SwiftDeveloper Вместо добавления слоя в imageView с помощью 'addSublayer' попробуйте один раз с помощью' insertLayer', как этот путь 'imageView.layer.insertSublayer (imageLayer, at: 0) ' –

Смежные вопросы