使用快速语言更改按钮背景颜色

时间:2014-06-26 09:46:18

标签: ios iphone colors uibutton swift

我是快速语言的新手。有人能告诉我如何使用swift语言更改按钮的背景颜色吗?

11 个答案:

答案 0 :(得分:61)

button.backgroundColor = UIColor.blueColor()

或任何其他颜色:redColor()greenColor()yellowColor()等。

另一种选择是RGBA颜色:

button.backgroundColor = UIColor(red: 0.4, green: 1.0, blue: 0.2, alpha: 0.5)

答案 1 :(得分:26)

试试这个,您需要添加255,如下所示:

button.backgroundColor = UIColor(red: 102/255, green: 250/255, blue: 51/255, alpha: 0.5)

答案 2 :(得分:11)

更新xcode 8和swift 3,指定常见颜色,如:

button.backgroundColor = UIColor.blue

Color()已被删除。

答案 3 :(得分:1)

您可以使用getRed功能设置按钮的背景颜色 我们假设你有:

  1. 一个名为button的UIButton,
  2. 您想要将按钮的背景颜色更改为某个已知的RBG值
  3. 然后,将以下代码放在要更改UIButton背景颜色的函数中

    var r:CGFloat = 0
    var g:CGFloat = 0
    var b:CGFloat = 0
    var a:CGFloat = 0
    
    // This will be some red-ish color
    let color = UIColor(red: 200.0/255.0, green: 16.0/255.0, blue: 46.0/255.0, alpha: 1.0) 
    
    if color.getRed(&r, green: &g, blue: &b, alpha: &a){
        button.backgroundColor = UIColor(red: r, green: g, blue: b, alpha: a)
    }
    

答案 4 :(得分:0)

U也可以在tintcolor和按钮图像周围进行游戏以间接改变颜色。

答案 5 :(得分:0)

/*Swift-5 update*/

let tempBtn: UIButton = UIButton(frame: CGRect(x: 5, y: 20, width: 40, height: 40))       
tempBtn.backgroundColor = UIColor.red

答案 6 :(得分:0)

如果您想以编程方式设置按钮的backgroundColor,那么此代码将为您提供帮助

Swift 3和Swift 4

self.yourButton.backgroundColor = UIColor.red

Swift 2.3或更低版本

self.yourButton.backgroundColor = UIColor.redColor()

使用RGB

self.yourButton.backgroundColor = UIColor(red: 102/255, green: 250/255, blue: 51/255, alpha: 0.5)

或者您可以使用浮点值

button.backgroundColor = UIColor(red: 0.4, green: 1.0, blue: 0.2, alpha: 0.5)

答案 7 :(得分:0)

在将要作为OUtlet更改其背景的UIButton连接到ViewController.swift文件后,可以使用以下代码:

 yourUIButton.backgroundColor = UIColor.blue

答案 8 :(得分:0)

要更改瓶装的背景色,请使用:

yourBtn.backgroundColor = UIColor.black

如果您使用的是storyBoard,请确保您已将storyBoardviewController连接起来,并且还链接了项目。

如果您不知道如何执行此操作,请检查下一个链接:

How to connect ViewController.swift to ViewController in Storyboard?

答案 9 :(得分:-1)

Swift 3

RGB颜色

btnLogin.backgroundColor = UIColor.init(colorLiteralRed: (100/255), green: (150/255), blue: (200/255), alpha: 1)

使用原生颜色

btnLogin.backgroundColor = UIColor.darkGray

答案 10 :(得分:-1)

Swift 4:

  

您可以轻松使用十六进制代码:

self.backgroundColor = UIColor(hexString: "#ff259F6C")

self.layer.shadowColor = UIColor(hexString: "#08259F6C").cgColor
  

十六进制颜色代码的扩展

extension UIColor {
    convenience init(hexString: String, alpha: CGFloat = 1.0) {
        let hexString: String = hexString.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines)
        let scanner = Scanner(string: hexString)
        if (hexString.hasPrefix("#")) {
            scanner.scanLocation = 1
        }
        var color: UInt32 = 0
        scanner.scanHexInt32(&color)
        let mask = 0x000000FF
        let r = Int(color >> 16) & mask
        let g = Int(color >> 8) & mask
        let b = Int(color) & mask
        let red   = CGFloat(r) / 255.0
        let green = CGFloat(g) / 255.0
        let blue  = CGFloat(b) / 255.0
        self.init(red:red, green:green, blue:blue, alpha:alpha)
    }
    func toHexString() -> String {
        var r:CGFloat = 0
        var g:CGFloat = 0
        var b:CGFloat = 0
        var a:CGFloat = 0
        getRed(&r, green: &g, blue: &b, alpha: &a)
        let rgb:Int = (Int)(r*255)<<16 | (Int)(g*255)<<8 | (Int)(b*255)<<0
        return String(format:"#%06x", rgb)
    }
}