2017-08-01 71 views
-1

對此很新穎,所以如果太容易,請原諒我。我爲我的VC創建了一個漸變背景,從那時起,當我運行該應用程序時,我的故事板上沒有任何圖像顯示。我附上我的代碼,並隨時糾正我。添加漸變圖層會導致圖片無法在Xcode中顯示

class whoVC: UIViewController { 







func setGradientBackground() { 
    let colorTop = UIColor(red: 119.0/255.0, green: 56.0/255.0, blue: 109.0/255.0, alpha: 2.0).cgColor 
    let colorBottom = UIColor(red: 185.0/255.0, green: 89.0/255.0, blue: 127.0/255.0, alpha: 2.0).cgColor 

    let gradientLayer = CAGradientLayer() 
    gradientLayer.colors = [ colorTop, colorBottom] 
    gradientLayer.locations = [ 0.0, 1.0] 
    gradientLayer.frame = self.view.bounds 

    self.view.layer.addSublayer(gradientLayer) 





} 


override func viewDidLoad() { 
    super.viewDidLoad() 


    setGradientBackground() 
} 




override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 
+0

重新排序子層。 –

+0

我該怎麼做? – Moises

回答

0

你是在說:

self.view.layer.addSublayer(gradientLayer) 

這意味着把一個子層中的所有其他現有的子層的前面。但是你的子視圖子圖層。因此,漸變涵蓋了所有的子視圖。如果那不是你想要的,不要這樣做。

+0

這樣刪除self.view.layer.addSublayer(gradientLayer)會有幫助嗎?我做到了,梯度不起作用。所以我假設我做錯了。 – Moises

+0

重新排列子層 – matt

0

爲了把該層的背景下,你應該使用insertSubLayer代替addSubLayer

view.layer.insertSublayer(yourLayer, atIndex: yourIndex) 

層的指數應該是0