我遵循this tutorial以便为界面构建器创建可重用的UI组件。我已经完全按照文章进行了操作,得到的结果与文章中所述的相同。

我没有的问题是,我在类中添加了一个名为style的@IBInspectable属性,该属性在界面生成器的属性检查器中可以正常显示,但是无论我做什么,在Setup()loadViewFromNib()中总是返回nil MyButton类的方法。

作为Interface Builder定制组件的新手,我开始怀疑本文中遵循的方法是否破坏了@IBInspectable属性,因为我过去通过使用定制UIButton类成功使用了它们,而没有添加额外的XIB组件。

任何帮助将非常感激。

    @IBDesignable
    class MyButton: UIButton {
        @IBOutlet weak var view: UIButton!
        @IBInspectable var style: String!
...

最佳答案

您永远不会使用默认值初始化变量。

尝试将其设置为一个空字符串,并删除如下所示的显式展开:
@IBInspectable var style: String = ""

10-08 05:35