我似乎很乐意设计实现自己的UIViews
方法的新UIControls
和-drawRect:
。这对我来说很有用,特别是在 Interface Builder 中使用UIViews
编写时。
但是在Interface Builder中编写它们很烦人,因为它们只是显示为无聊的普通矩形。
如果视图实际上将自己呈现为内置控件,那将会很棒。
我有什么方法可以构建我的项目,以便Interface Builder可以呈现我的自定义视图吗?
答案 0 :(得分:18)
为此,您实际上必须为使用自定义类的Interface Builder创建一个插件。一旦创建并安装了插件,您就可以将类(您的视图)的实例拖放到另一个窗口/视图/任何其他控件上。要开始创建IB插件,请参阅Interface Builder Plug-In Programming Guide。另外,我建议你看看Aaron Hillegass的书 Cocoa Programming for Mac OS X 。除了写得很好且易于理解之外,它还有一章介绍如何创建自己的IB调色板控件。
答案 1 :(得分:0)
这可以通过使用@IBDesignable
标记UIView子类来实现。执行此操作后,您的自定义视图将在Interface Builder中呈现。您甚至可以通过将参数标记为@IBInspectable
来添加可配置的参数。这是一个Swift示例:
@IBDesignable class customView: UIView {
@IBInspectable var count: Int = 0
}
有一个article on NSHipster可以提供更多细节。