У меня есть вопрос об использовании NSViewController и переключении между представлениями.У меня есть приложение Какао, где у меня есть окно.Идея с окном состоит в том, что оно будет отображать количество представлений один за другим, где каждое представление хранится в отдельном файле XIB.Каждое представление имеет соответствующий NSViewController.Я сделал минимальный пример того, что я делаю, когда загружается только первое представление.
@interface MyWindowController : NSWindowController {
NSViewController *currentViewController;
}
@property (assign) IBOutlet NSView *targetView;
@end
@implementation MyWindowController
@synthesize targetView;
- (id)init
{
return [super initWithWindowNibName:@"MyWindow"];
}
- (void)dealloc
{
[currentViewController release];
[super dealloc];
}
- (void)windowDidLoad
{
[super windowDidLoad];
currentViewController = [[NSViewController alloc] initWithNibName:@"FirstView" bundle:nil];
[self.targetView addSubview:currentViewController.view];
[currentViewController.view setFrame:targetView.bounds];
}
@end
Когда окно загружено, также загружается представление из FirstView.xib, и представление отображается вокно.В этом случае загруженное представление имеет только текстовое поле, и я хотел бы, чтобы текстовое поле было выделено так, чтобы ввод мог быть записан в него напрямую, без необходимости нажимать на него пользователем, но я не могу понять, как это сделать.Можно ли выбрать текстовое поле при загрузке представления?
После прочтения документации я обнаружил, что, вероятно, хочу установить в поле initialFirstResponder окна текстовое поле, но не могу найти, какделать это, когда текстовое поле находится в файле XIB, отличном от окна.