2011-03-10 1 views
0

У меня есть несколько вопросов о NSUserDefaults в Mac OS X:Вопросы о NSUserDefaults

  1. Когда в NSUserDefaults использовать словарь предоставленный registerDefaults? Только в первый раз, когда приложение открывается или каждый раз, когда приложение открывается?
  2. Где хранится информация из NSUserDefaults?
  3. Как сбросить NSUSerDefaults?

Спасибо!

ответ

3
  1. Только в первый раз. Но вы можете заставить приложение повторно использовать настройки по умолчанию с терминалом.
  2. ~/Library/Preferences/YourIdentifier.plist (например com.apple.finder.plist)
  3. Terminal: по умолчанию удаление YourIdentifier (например com.apple.finder)
    Код: [NSUserDefaults resetStandardUserDefaults];
+0

Спасибо за быстрый ответ! У меня есть еще один вопрос, и я не хочу создавать новый вопрос. Если мой NSSlider привязан к значению, и я изменяю это значение программно, мой NSSlider автоматически изменит свое старое значение на новое значение? (Поскольку он привязан). Я пробовал, но tis не работает, но это правильно? Какой смысл связывать, если это не так. Спасибо! – user635064

+1

Для 1 .: словарь 'registerDefaults :' используется каждый раз для любого ключа, который не существует в сохраненных пользовательских значениях по умолчанию. Эти значения по умолчанию не выписываются, если они не изменяются. – Wevah

+0

@ user635064: You * should * создайте для этого новый вопрос. Это не имеет никакого отношения к этому вопросу. –

0

На самом деле он должен измениться. Я бы попробовал его с другими элементами управления, такими как NSTextField. Когда это не работает, вы делаете это неправильно

Идея привязки - именно то, что вы считали.