Изменить режим рендеринга UIImage во время выполнения - PullRequest
1 голос
/ 01 октября 2019

В приложении, над которым я работаю, у меня есть некоторые UIImageViews, которые могут (или не могут) быть настроены. Как изменить режим рендеринга изображения, которое было загружено как оригинал, в шаблон во время выполнения?

1 Ответ

1 голос
/ 01 октября 2019

Вы можете инициализировать UIImage из другого cgImage, затем вы можете отобразить его, как вам нужно

ExampleCode

let originalImage = UIImage(named: "TimeClock2Filled")?.withRenderingMode(.alwaysOriginal)
if let original = originalImage?.cgImage {
    let image2 = UIImage(cgImage: original).withRenderingMode(.alwaysTemplate)
}

Примеркод Objective-C

UIImage * image = [[UIImage imageNamed:@"TimeClock2Filled"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
if(image.CGImage != nil) {
    UIImage * image2 = [[UIImage imageWithCGImage:image.CGImage]imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
}

это работает просто отлично было проверено

...