Я согласен с Джошем, особенно в части awakeFromNib.Ниже приведено несколько дополнительных заметок / тестов, которые я написал для проверки.Ниже приведены файлы RandomGenerator, но они упрощены, чтобы проиллюстрировать то, о чем я думал, о чем ваш вопрос:
// RandomGenerator.h
#import <Foundation/Foundation.h>
@interface RandomGenerator : NSObject {
IBOutlet NSTextField *textField;
}
@end
--------------
// RandomGenerator.m
#import "RandomGenerator.h"
@implementation RandomGenerator
- (void)awakeFromNib {
[textField setStringValue:@"Insert a number between 1 and 100"];
}
@end
А затем файлы AppDelegate:
// GuessTheNumberAppDelegate.h
#import <Cocoa/Cocoa.h>
@interface GuessTheNumberAppDelegate : NSObject <NSApplicationDelegate>
@property (assign) IBOutlet NSWindow *window;
@end
--------------
// GuessTheNumberAppDelegate.m
#import "GuessTheNumberAppDelegate.h"
#import "RandomGenerator.h"
@implementation GuessTheNumberAppDelegate
@synthesize window = _window;
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
RandomGenerator *random = [[RandomGenerator alloc] init];
NSLog(@"%@",random);
}
@end
Сборка и запуск проекта Я получаю то, чтоможно ожидать:
с
Обратите внимание, что мне не нужно было подключать RandomGenerator в качестве IBOutlet, япросто убедился, что его заголовок включен в файл GuessTheNumberAppDelegate.h.Но имейте в виду, что у Джоша может быть что-то более общее, поэтому вам, возможно, все равно придется это сделать.
Надеюсь, это поможет!