定制UIButton时不同状态的IBInpectable属性

时间:2016-12-14 05:19:42

标签: ios swift uibutton ibdesignable

我有自定义UI按钮并使用IBInspectable创建一些属性。但是,我还需要选定或突出显示状态的相同属性,并且可以在Interface Builder中进行检查。我想知道它是否可以实现?

这是我创建的自定义按钮

    @IBDesignable
    class ImageLabelButton: UIButton{
    /*
     // Only override draw() if you perform custom drawing.
     // An empty implementation adversely affects performance during animation.
     override func draw(_ rect: CGRect) {
     // Drawing code
     }
     */
    let buttonImgView = UIImageView()
    let buttonLabel = UILabel()
    //    let stackView = UIStackView()



    // Override property observors
    @IBInspectable
    var textColor:UIColor? {
        get {
            return buttonLabel.textColor
        }
        set(newValue) {
            self.buttonLabel.textColor = newValue
        }
    }
 }

我想为其他州创建一个IBInspectable属性。可以吗?谢谢!

1 个答案:

答案 0 :(得分:0)

简短回答?不可以。接口生成器不能处理"代码。

  • 我需要知道我的应用程序何时处于纵向或横向(根据此情况,各种滑块控件位于底部或右侧)。

我可以使用IB吗?如果我需要在iPad上知道,它的大小等级是(wR hR),除非有滑出或分屏。我可以"设计"每个方向的东西,但即使是Apple - WWDC' 16,使应用程序自适应,第2部分 - 最终将代码放入viewWillLayoutSubviews()中。

  • 在故事板上放置UIButton。你可以处理水龙头吗?将UISlider放在故事板上。你可以向左或向右平移它吗?

您要求设计时工具来处理运行时操作。

因此,您无法使某些按钮状态为IBDesignable。