我在MainMenu.xib中有一个自定义视图,它将包含2个子视图。这些子视图应该从一些具有单个NSView的xib文件加载。 我该怎么做? 包含IBOutlet和IBActions的类对于每个应从哪个类继承的xib?对于每个xib,我必须将文件所有者设置为包含出口/动作的类?使用NSView加载Xib文件
回答
您的自定义视图或主菜单的头文件应该包括您提到的2个子视图,并且您应该将它们列为IBOutlet成员和IBOutlet属性。 (不要忘记综合!)
在你的xib文件中,你应该能够拖入2个NSView,然后将他们的类设置为你的2个子类,然后通过从'文件所有者'拖动到对象“列表中的对象。
也许我没有解释得很好......我想从xib文件中加载2个NSViews MainMenu.xib(由xcode创建)。这mainMenu.xib包含一个NSView,我想加载前面提到的2个xib。我正在为mac开发 – a438
另外我想知道将一个类与Outlets/Actions链接到xib文件的最佳/正确方法(并在IB中查看它们)。我应该在文件所有者中设置我的自定义类还是拖动NSObject(来自IB的对象库)? – a438
您的第一条评论:是的,我写了UIView而不是NSView ...但它们基本上是一样的,我写的东西应该仍然有效。第二条评论:由于你的子类继承自NSView,如果你拖动一个NSView对象到Interface Builder中,然后将它们的类设置为你的子类的类(在身份检查器选项卡上),那么它们应该可以正常工作。当然,您仍然需要在主菜单的loadView :(或类似的)方法中初始化它们。 – Luke
您可以使用:
- (BOOL)loadNibNamed:(NSString *)nibName
owner:(id)owner
topLevelObjects:(NSArray * _Nonnull *)topLevelObjects
加载您的厦门国际银行的文件,该topLevelObjects参数是通过引用传递数组,调用该函数后,将包含对象的数组从厦门国际银行,你所感兴趣的东西在这里是一个NSView类型的对象,你可以添加视图到任何你想要的地方
- 1. 从XIB加载NSView子类
- 2. Objective-C在NSView中加载XIB
- 3. 使用XIB文件加载UITableViewCell子类
- 4. 多个NSView到一个Xib文件
- 5. Swift从.xib文件实例化NSView
- 6. 加载一个xib文件
- 7. 无法加载xib文件
- 8. 并加载NIB/XIB文件?
- 9. 将xib文件加载到自定义NSView中嵌入另一个自定义NSView
- 10. 在NSView中加载SWF文件
- 11. 如何使用Swift从Xib载入NSView 3
- 12. 加载.xib文件并显示它
- 13. 无法从UIViewController加载xib文件
- 14. 加载xib文件到一个容器
- 15. 如何在UIView中加载xib文件
- 16. iOS:使用设备修饰符来加载xib文件?
- 17. UITableViewController不使用xib文件加载自定义单元格
- 18. 从viewcontrollernib加载NSView
- 19. 如何用附加的视图控制器加载xib文件?
- 20. 如何使用顶级ViewController加载XIB?
- 21. 使用自定义转换加载XIB?
- 22. 创建使用XIB文件
- 23. iPhone - 预加载xib
- 24. 如何加载XIB?
- 25. ECSlidingViewController从XIB加载
- 26. 加载/重载xib uiview
- 27. initWithNibName始终加载英文xib
- 28. 无法从XIB加载viewForSectionHeader
- 29. 重新加载UIViewController和xib
- 30. 无法从XIB加载Cell
好的,我做到了:) – a438