簡體   English   中英

為什么我的背景顏色沒有快速改變?

[英]why isn't my background color changing for my view in swift?

我試圖以編程方式更改視圖的背景顏色,因為稍后我將不得不根據用戶輸入來切換顏色。 我不知道為什么這不會改變背景顏色。

class MainViewController: UIViewController {

  @IBOutlet weak var rLabel: UILabel!
  @IBOutlet weak var gLabel: UILabel!
  @IBOutlet weak var bLabel: UILabel!
  @IBOutlet weak var largeColorView: UIView!



 override func viewDidLoad() {
    super.viewDidLoad()
    func colorWithAlphaComponent(alpha: CGFloat) -> UIColor{
      let newColor = UIColor.init(red: 0.5, green: 0.8, blue: 1.0, alpha: alpha)
      return newColor
    }
    print(largeColorView.backgroundColor)
    print(colorWithAlphaComponent(1.0))
    largeColorView.backgroundColor! = colorWithAlphaComponent(1.0)
    print(largeColorView.backgroundColor)

    // Do any additional setup after loading the view.
  }

第一個錯誤:您必須在viewDidLoad()方法之外實現函數,但您需要對其進行調用。 因此,您的代碼應如下所示:

override func viewDidLoad() {
    super.viewDidLoad()
    print(largeColorView.backgroundColor)
    print(colorWithAlphaComponent(1.0))
    largeColorView.backgroundColor! = colorWithAlphaComponent(1.0)
    print(largeColorView.backgroundColor)
  }

func colorWithAlphaComponent(alpha: CGFloat) -> UIColor{
  let newColor = UIColor.init(red: 0.5, green: 0.8, blue: 1.0, alpha: alpha)
  return newColor
}

因此,這行代碼將運行,因為它調用了該函數

largeColorView.backgroundColor! = colorWithAlphaComponent(1.0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM