1
我是新來的xcode,我將一個漸變層放在按鈕上,它不填滿整個寬度。我不確定我做錯了什麼。我的代碼在這裏以及它如何渲染的截圖。CAGradientLayer沒有跨越我的按鈕的整個寬度 - xcode
let gradientLayer = CAGradientLayer()
gradientLayer.frame = self.btnSavePhoto.bounds
let color1 = UIColor(red:0.05, green:0.29, blue:0.49, alpha:1.0).CGColor as CGColorRef
let color2 = UIColor(red:0.08, green:0.23, blue:0.39, alpha:1.0).CGColor as CGColorRef
gradientLayer.colors = [color1, color2]
gradientLayer.locations = [0.0, 1.0]
self.btnSavePhoto.layer.addSublayer(gradientLayer)
感謝您的回答。我將如何去創建一個自定義的UIButton子類來更新layoutSubviews方法中自定義圖層的大小? –
創建UIButton的子類,在initWithFrame方法中,您將創建漸變圖層並將其存儲到強屬性(var),並將其添加爲子圖層。 (與現在一樣) 然後重寫layoutSubviews()方法,您可以在其中調用super.layoutSubviews()並調整圖層大小: self.gradientLayer.frame = self.bounds。 對不起,我不能發佈實際的代碼,你可以立即使用,但我可以做以後如果你仍然需要幫助:) – hybridcattt
如果你可以,並有充足的時間,我只能真的做美容改變這一點,並且在編程方面有點失落。 –