Я изучаю проект, который будет загружать пользовательские NSBundles, которые включают NSViewController. В моей основной программе у меня есть этот код для работы с пакетом после его загрузки ...
id principalClass = [loadedBundle principalClass];
id instance = [[principalClass alloc] init];
[localLabel setStringValue:[instance name]];
NSView *incomingView = [[instance viewController] view];
[localView addSubview:incomingView];
[localView display];
И метод init основных классов в комплекте выглядит следующим образом ...
-(id) init {
if(self = [super init]){
name = @"My Plugin";
viewController = [[ViewController alloc] initWithNibName:@"View" bundle:nil];
}
return self;
}
View.nib - это перо, расположенное в проекте bundles. Но всякий раз, когда я загружаю пакет, я получаю эту ошибку ...
2010-05-27 09: 11: 18.423 PluginLoader [45032: a0f] не может найти перо с именем: Просмотреть в пути пакета: (ноль)
2010-05-27 09: 11: 18.424 PluginLoader [45032: a0f] - [NSViewController loadView] не смог загрузить перо «View».
Я знаю, что у меня все подключено, потому что строка [label setStringValue:[instance name]];
правильно устанавливает текст метки. Плюс, если я возьму все предложения в комплекте и загрузлю их в свой основной проект приложений, все будет работать как положено. Любые мысли о том, как я могу правильно ссылаться на «Вид» в моем комплекте?
Спасибо!