Цвет оттенка изображения Xamarin iOS

Я хочу использовать изображение шаблона черного цвета и использовать tintColor этого изображения, чтобы установить цвет и иметь только одно изображение.

Затем я помещаю изображение шаблона в актив и пытаюсь изменить цвет:

object.TintColor = UIColor.Blue;

Но это не работает, оно все еще черное

Может кто-то мне помочь, пожалуйста ?

Спасибо


person Community    schedule 22.11.2017    source источник
comment
Вы обновляете его в UIThread?   -  person Brandon Minnick    schedule 22.11.2017


Ответы (1)


Вы должны установить режим рендеринга изображения AlwaysTemplate, чтобы TintColor влиял на ваш UIImage, иначе он будет отображать изображение как есть. Это помогает контролировать цвет изображения на любой цвет, который вы хотите установить, имея одно изображение в ресурсах или xcassets.

Следующий код должен помочь вам.

imgViewObject.Image = imgViewObject.Image.ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate);
imgViewObject.TintColor = UIColor.Blue;

Мы также можем установить режим рендеринга из xcassets, как показано на следующем рисунке:

xcassets визуализировать как

Дополнительные сведения о работе с шаблонными изображениями

person MilanG    schedule 22.11.2017
comment
О боже, это работает! Но зачем мне помещать ImageWithRenderingMode в код, когда я помещаю его в активы? - person ; 23.11.2017
comment
Мне нужно было добавить цвет оттенка к моему плиточному изображению с изменяемым размером, и это помогло - person Nick Peppers; 28.01.2018