2012-08-08 54 views
6

我来自C#和Winforms的世界,我可以构建一个自定义UserControl并将其拖到窗体上,就好像它是一个通用控件一样。有没有办法在Xcode和Interface Builder中做到这一点?在界面生成器中将自定义视图拖到窗口上?

我只看到如何在运行时设置视图,但我希望在设计时在我的窗口中看到它。例如,我希望我的自定义视图被列在可用控件中。

谢谢!

西蒙

+0

在IB中有一个自定义视图,只需将其拖入。 – rdelmar 2012-08-08 19:03:37

+0

@rdelmar - 如何将自定义视图与我的实际视图相关联?现在我只看到一个说“自定义视图”的框。 – 2012-08-08 19:23:30

+0

选择自定义视图,然后在身份检查器中,将其类设置为NSView子类。 – rdelmar 2012-08-08 19:34:40

回答

6

Interface Builder中不添加(或允许添加的,现在IB插件是废弃的)自定义对象的对象库。您只能拖动现有的/预设的对象,但您可以可以让IB实例化它们作为子类的实例,只要它们以相同的方式实例化即可。

E.g. 将在自定义视图和类设置为MyCustomViewClass或拖动滚动视图和类设置为MyCustomScrollView或拖动的对象和类设置为CustomObject,等等。

而这是在Interface Builder中使用自定义控件的首选方式。

enter image description here

1

基本上只是剥去rdelmar的评论......但我认为照片会很有帮助​​

将一个普通视图进入IB,然后选择它,做到这一点。

1

您在IB中创建的每个窗口都有一个视图作为其第一个子组件。你不需要为它创建一个单独的自定义视图。如果你真的是继承它,只需在检查器中更改类名。

0

除了什么在这个线程有关添加自定义视图的名字视图控制器的XIB文件所提到的,您需要在您的自定义视图覆盖initWithCoder

相关问题