Swift 3: UIImage lorsque la valeur de modèle de l'image et changé la couleur de teinte ne pas afficher l'image

Dans Swift 3, lorsque j'essaie de modifier par programmation la couleur d'une image téléchargée à partir d'actifs comme cela:

let imageView = UIImageView()
let image = UIImage(named: "imageFromAssets")?.withRenderingMode(.alwaysTemplate)
imageView.contentMode = .scaleAspectFit
imageView.tintColor = GREEN_UICOLOR //Change to custom green color
imageView.image = image

L'image apparaît comme un bloc carré ci-dessous:

Swift 3: UIImage lorsque la valeur de modèle de l'image et changé la couleur de teinte ne pas afficher l'image

Cependant, le plus drôle, c'est que cela ne se produit pas toujours. Avec quelques autres images dans les biens, de travaux et de modifications de la teinte de vert:

Swift 3: UIImage lorsque la valeur de modèle de l'image et changé la couleur de teinte ne pas afficher l'image

Pourquoi est-il un comportement incohérent ici? Et en général, comment puis-je ajouter un modèle de l'image à des actifs, et être capable de programmation pour changer sa couleur? Je me rends compte quand je ne change pas l'image d'un modèle de l'image, il fonctionne, mais je ne peux pas le faire parce que je veux changer l'image de la teinte.

  • Vérifiez l'image, il devrait être composé par alpha et une couleur
InformationsquelleAutor leonardloo | 2017-01-19