Ios 确定Interface Builder中UI元素的可用运行时属性
我一直在玩故事板上的一个按钮,很难在它周围找到一个边框,直到我找到一个页面,它显示了如何添加用户定义的运行时属性。我能够使按钮看起来像我想要的,但是我想知道是否有一种方法可以让我查看特定对象的可用属性列表Ios 确定Interface Builder中UI元素的可用运行时属性,ios,cocoa-touch,interface-builder,Ios,Cocoa Touch,Interface Builder,我一直在玩故事板上的一个按钮,很难在它周围找到一个边框,直到我找到一个页面,它显示了如何添加用户定义的运行时属性。我能够使按钮看起来像我想要的,但是我想知道是否有一种方法可以让我查看特定对象的可用属性列表 单击“+”添加一个新属性不会提供任何类型的自动完成来显示可用的属性,并且查看我的项目代码似乎也不会显示任何内容,这并不令人惊讶。是否有地方可以找到Xcode中所有/任何对象的所有可用属性?到目前为止,这里的搜索通常没有显示任何有用的结果。用户定义的运行时属性是NIB加载子系统通过未归档进程使
单击“+”添加一个新属性不会提供任何类型的自动完成来显示可用的属性,并且查看我的项目代码似乎也不会显示任何内容,这并不令人惊讶。是否有地方可以找到Xcode中所有/任何对象的所有可用属性?到目前为止,这里的搜索通常没有显示任何有用的结果。用户定义的运行时属性是NIB加载子系统通过未归档进程使用的关键路径列表。初始化后,对于此列表中的每个键路径,将向未归档对象发送消息-setValue:forKeyPath:。因此,可用属性只不过是所有方法的集合并集,这些方法的选择器排序为-setAttribute:,IVAR的名称为“\u attribute”或“attribute”。 您可以在公共标题或文档中找到的所有公共属性。
也可以设置私有属性,但这不是好的做法。例如,您可以在任何方法中通过断点执行找到所有IVAR,并查看“self”中的内容。您可以通过代码实现同样的功能,因此只需检查
UIButton
的属性(该属性可在文档中找到,并使用autocomplete)就可以了
您还必须确保检查的是
UIButton
实例上的属性,而不是类属性。您可以从代码中实现同样的功能,因此只需检查UIButton
(可在文档中找到并使用autocomplete)的属性即可。UIButton.
没有“layer”属性或“borderWidth”…我缺少什么?您可能试图使用UIButton.layer
而不是UIButton().layer
。两者都是实例属性,而不是类属性,因此您需要通过实例访问它们。UIButton
有。苹果的文档从来没有很好地帮助您找到类似的东西。(去年他们让情况变得更糟。)祝您好运。