2016-04-25 4 views
0

J'essaie de définir la couleur du texte d'en-tête pour une complication Modular Large.Définition de la teinteColor pour la complication Apple Watch

J'ai déjà personnalisé le cadran de la montre pour utiliser Multicolor. Cependant, lorsque je compile et exécute ce code, la couleur du texte d'en-tête est toujours blanche (ce qui est la valeur par défaut).

Pourquoi la couleur n'est-elle pas mise à jour?

private func templateForClassModularLarge(className: Schedule) -> CLKComplicationTemplateModularLargeStandardBody { 
    let template = CLKComplicationTemplateModularLargeStandardBody() 
    let headerTextProvider = CLKSimpleTextProvider(text: "My Schedule", shortText: "Schedule") 
    headerTextProvider.tintColor = UIColor(red: 101, green: 153, blue: 255, alpha: 1) 
    template.headerTextProvider = headerTextProvider 

    template.body1TextProvider = CLKTimeIntervalTextProvider(startDate: className.start, endDate: className.end) 
    template.body2TextProvider = CLKSimpleTextProvider(text: className.description, shortText: className.shortDescription) 

    return template 
} 

Répondre

3

UIColor types de paramètres sont CGFloat, spécifiée comme une valeur de 0,0 à 1,0.

Parce que vos paramètres RVB sont supérieurs à 1, la couleur finit par être blanc, ce qui serait:

UIColor(red: 1, green: 1, blue: 1, alpha: 1) 

Pour résoudre ce problème, il suffit de changer votre tintColor à

headerTextProvider.tintColor = UIColor(red: 101/255, green: 153/255, blue: 255/255, alpha: 1)