Interface-Builder: «объединить» NSView-класс с .xib
Я хотел бы настроить пользовательский NSView в Interface-Builder, но я незаставить его работать на OSX.
В моем ViewController'еs .xib, я добавил пользовательское представление и установил для класса значение MyCustomView. Я создал MyCustomView.h, MyCustomView.m и MyCustomView.xib.
В MyCustomView.xib я также установил для класса значение MyCustomView. В MyCustomView.m,- (void)awakeFromNib
называется, но- (id)initWithCoder:(NSCoder *)aDecoder
а также- (id) awakeAfterUsingCoder:(NSCoder*)aDecoder
Арен»т.
Что я'Я хотел бы добиться того, чтобы в моем ViewController, представление, которое я добавил, было "заполнено» с видом, который я настроил в MyCustomView.xib. Какие'лучший способ сделать это?
РЕДАКТИРОВАТЬ: я неЯ думаю, я был достаточно ясен ... Я
у меня есть мой ViewController, содержащий пользовательское представление, называемое MyCustomView.
Это представление должно быть типа MyCustomView, где
MyCustomView.h MyCustomView.m MyCustomView.xib
существует. Я уже установил файлs владелец MyCustomView.xib для MyCustomView, и я уже установил для CustomView в моем ViewController значение MyCustomView - но это не такт работа.
Если я сделаю это с
- (void)awakeFromNib {
NSString* nibName = NSStringFromClass([self class]);
NSArray* topLevelObjects;
[[NSBundle mainBundle] loadNibNamed:nibName
owner:nil
topLevelObjects:&topLevelObjects];
NSView* view = topLevelObjects[0];
[view setFrame:[self bounds]];
[self addSubview:view];
}
Я получаю только представление типа NSView, а не MyCustomView ... Нет ли простого способа сказать ViewController.xib, что он 'это MyCustomView?
РЕДАКТИРОВАТЬ 2: я загрузил простой проект
Вhttps://dl.dropboxusercontent.com/u/119600/Testproject.zip Вы находите простой проект с MyCustomView (не в ViewController, а в window.xib) - но это не такпоказать кнопку, которая находится в MyCustomView.xib. Я'Я хотел бы достичь именно этого - чтосамый простой, лучший способ?