Маскирование прогрессии UIImage

У меня есть UIImage, для которого я планирую создать маску, чтобы, когда пользователь продолжает процесс регистрации, ему было представлено каждое число, переходящее от неактивного к активному, чтобы завершить (флажок). Я также создаю знак "ошибка", который я хотел бы разместить в случае ошибки. Это похоже на контроллер просмотра страниц, но я не хочу использовать контроллер просмотра страниц. Это 5 кружков, которые будут менять цвет, когда активен или не активен, поменять на галочку, когда завершено, или "X" для ошибки. Должен ли я использовать CGImageMaskCreate или CALayer? Это то, что я до сих пор:

func progressImage (name: String) -> UIImage {

let stepOne: UIImage = UIImage(named: name)!
print("UIImage 1: \(stepOne.size.width) H\(stepOne.size.height)")

let maskImage: CGImage = stepOne.CGImage!

}

func maskImage (изображение:UIImage, маска: (UIImage)) -> UIImage {

let imageReference = image.CGImage
let maskReference = mask.CGImage

let imageMask = CGImageMaskCreate(CGImageGetWidth(maskReference),
CGImageGetHeight(maskReference),
CGImageGetBitsPerComponent(maskReference),
CGImageGetBitsPerPixel(maskReference),
CGImageGetBytesPerRow(maskReference),
CGImageGetDataProvider(maskReference), nil, true)

let maskedReference = CGImageCreateWithMask(imageReference, imageMask)

let maskedImage = UIImage(CGImage:maskedReference!)

return maskedImage

}

переопределить func viewDidLoad() { super.viewDidLoad()

//Image array
let image = UIImage(named: "image1.png")
let maskingImage = UIImage(named: "mask1.png")
imageView.image = maskImage(image!, mask:  maskingImage!)

}

0 ответов

Другие вопросы по тегам