Nouveautés Xcode 9 – Les catalogues d’Assets de couleur

Une des nouveautés de Xcode 9 qui me plaît énormément et la possibilité de créer nos propres Assets de couleur et de les utiliser dans le Storyboard, mais aussi dans le code.
Pour les développeurs Swift, vous pouvez sauter les deux premières étapes. Xcode
Créer un nouveau projet
Dans notre exemple, une Single View App fera très bien l’affaire.

Lancer Xcode 9 depuis Xamarin

Depuis Xcode
Créer notre Asset
L’ajout de couleurs dans un catalogue d’Asset n’est pas au premier abord facile à découvrir. Après avoir sélectionné votre répertoire .xcassets dans Xcode, appuyez sur le bouton plus en bas à gauche et sélectionnez “New Color Set”.
- Couleur Cellenza sobre
- Couleur Cellenza Flashy
Utiliser les nouveaux Assets de couleur
- Depuis le Storyboard

- Depuis le code
Pour utiliser nos Assets depuis le code, je vais ajouter un simple bouton blanc et je vais le colorer au chargement de ma vue.

Maintenant dans le ViewDidLoad de mon ViewController.
// Xamarin iOS
DoesItBetter.TextColor = UIColor.FromName("CellenzaFlashy");
// iOS
DoesItBetter.TextColor = UIColor(named: "CellenzaFlashy")
// macOS
DoesItBetter.TextColor = NSColor(named: "CellenzaFlashy")

Conclusion
Ce petit changement est comme vous avez pu le remarquer assez simple, mais extrêmement efficace et utile. Maintenant, vous allez pouvoir facilement changer la couleur de votre UI intelligemment et ne pas avoir des couleurs non définies.
Bon pour moi ce n’est pas encore parfait. J’aurais voulu que Xcode nous créé une classe ou un Enum de couleur pour pouvoir l’appeler dans le code au lieu d’appeler une String qui peut être mal écrite.
Mais bon, rien ne vous empêche de créer cette Enum de couleurs pour l’appeler par la suite. Beaucoup plus facile pour un recfacto.