2016-01-07 42 views
0

我想在我的IOS項目中創建一個自定義按鈕。但是當我用我的課程創建按鈕時,後臺在故事板中不起作用。但是,當我運行該程序的按鈕工作正常。IBDesignable無法在按鈕上設置背景

這裏你可以看到我的課

@IBDesignable class GreenButtonTest : UIButton{ 

    override init(frame: CGRect) { 
     super.init(frame: frame) 
     style() 
    } 

    required init(coder aDecoder: NSCoder) { 
     super.init(coder: aDecoder)! 
     style() 
    } 

    private func style() { 
     self.backgroundColor = UIColor(CGColor: "#6eb18c".CGColor) 
    } 

} 

回答

1

你需要重寫prepareForInterfaceBuilder(),並從那裏過調用風格()。

試試這個:

@IBDesignable class GreenButtonTest : UIButton{ 

    override init(frame: CGRect) { 
     super.init(frame: frame) 
     style() 
    } 

    required init(coder aDecoder: NSCoder) { 
     super.init(coder: aDecoder)! 
     style() 
    } 

    override func prepareForInterfaceBuilder() { 
     style() 
    } 

    private func style() { 
     self.backgroundColor = UIColor.greenColor() 
    } 

} 
+0

我在哪裏可以知道這個變化是由? –

+1

我的意思是我在哪裏可以看到蘋果文檔上的這些變化,我如何知道文檔中有變化 –

+0

您可以例如觀看WWDC會話視頻以瞭解新功能:https://developer.apple.com/videos/wwdc2015 / –