NSUserDefaults не работает при программном открытии пера - PullRequest
0 голосов
/ 31 августа 2011

В окне, которое появляется при запуске, и NSUserDefaults прекрасно работает с начальным окном. Если я снова открываю тот же файл пера программно с этим кодом:

NSWindowController *controller = [[NSWindowController alloc] initWithWindowNibName:@"MainMenu"];
[controller showWindow:self];

не удается получить NSUserDefaults. Я получаю значение (null). Я читаю значения по умолчанию, как это:
[[NSUserDefaults standardUserDefaults] valueForKey:@"myKey"];

и напишите им так:
[[NSUserDefaults standardUserDefaults] setValue:@"myValue" forKey:@"myKey"];

Что я делаю не так? Как только значение будет установлено и я перезапущу приложение, снова откройте прогу. окно загруженного пера не удается!

Я открываю это окно, открытое программным способом, из класса, к которому подключен файл NIB -> Пользователь нажимает кнопку, и открывается второе окно!

1 Ответ

0 голосов
/ 31 августа 2011

Я сам нашел проблему сейчас.У меня была переменная NSUserDefaults, определенная в .h, поэтому я могу получить к ней доступ ко всему файлу .m.Я инициализировал его, mainDefaults = [NSUserDefaults standardUserDefaults], в - (void)applicationDidFinishLaunching:(NSNotification *)aNotification{}, который вызывался только при запуске приложения!Когда я открывал новое окно, оно, конечно, не вызывалось!

В любом случае, спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...