2014-06-09 1 views
35

Existe-t-il un moyen de définir la couleur d'arrière-plan UIView avec Swift?Couleur d'arrière-plan UIView dans Swift

Je sais que dans Objective-C, vous utiliseriez self.view.backgroundColor = [UIColor redColor];, mais cela ne fonctionne pas de la même manière dans Swift. J'ai regardé autour et parce que Swift est seulement environ une semaine, je ne peux pas trouver une réponse.

Quelqu'un a-t-il des suggestions?

+9

Vous faites des excuses. ;-) J'ai trouvé la réponse à cette question le premier jour. Voici comment je l'ai trouvé: Dans Xcode, dans votre éditeur de code, écrivez 'UIColor', puis maintenez la touche de commande enfoncée et cliquez sur le mot' UIColor'. Vous allez directement dans l'en-tête où vous trouverez toutes les fonctions disponibles. –

Répondre

92
self.view.backgroundColor = UIColor.redColor() 

Swift 3:

self.view.backgroundColor = UIColor.red 
+3

comment puis-je utiliser hexadécimal? –

+1

@Igor Ronner UIColor (rouge: 0xFF/0xFF, vert: 0x00/0xFF, bleu: 0x00/0xFF, alpha: 0xFF/0xFF) –

15

Vous pouvez utiliser la ligne ci-dessous qui va dans une fermeture (viewDidLoad, didLayOutSubViews, etc.):

self.view.backgroundColor = .redColor() 

EDIT Swift 3:

view.backgroundColor = .red 
12

Je vois que cette question est résolue, mais, je veux ajouter quelques informations que peut aider quelqu'un.

si vous voulez utiliser le tournevis pour définir la couleur d'arrière-plan, je trouve cette fonction et le travail:

func UIColorFromHex(rgbValue:UInt32, alpha:Double=1.0)->UIColor { 
    let red = CGFloat((rgbValue & 0xFF0000) >> 16)/256.0 
    let green = CGFloat((rgbValue & 0xFF00) >> 8)/256.0 
    let blue = CGFloat(rgbValue & 0xFF)/256.0 

    return UIColor(red:red, green:green, blue:blue, alpha:CGFloat(alpha)) 
} 

J'utilise cette fonction comme suit:

view.backgroundColor = UIColorFromHex(0x323232,alpha: 1) 

quelques fois vous devez utiliser self:

self.view.backgroundColor = UIColorFromHex(0x323232,alpha: 1) 

Eh bien c'était tout, j'espère que ça aide quelqu'un.

désolé pour mon mauvais anglais.

ce travail sur iOS 7.1+

2

Vous pouvez utiliser cette extension comme une solution de rechange si vous avez affaire à la valeur RGB.

extension UIColor { 
    static func rgb(red: CGFloat, green: CGFloat, blue: CGFloat) -> UIColor { 
     return UIColor(red: red/255, green: green/255, blue: blue/255, alpha: 1) 
     } 
    }