NSUserDefaults
NSUserDefaults
класс обеспечивает программируемый интерфейс для взаимодействия с системой значений по умолчанию. Система значений по умолчанию позволяет приложению настраивать свое поведение соответствовать предпочтения пользователя. Например, можно позволить пользователям определять, какие единицы измерения отображения приложения или как часто автоматически сохраняются документы. Приложения записывают такие предпочтения путем присвоения значений ряду параметров в базе данных значений по умолчанию пользователя. Параметры упоминаются как значения по умолчанию, так как они обычно используются для определения состояния по умолчанию приложения при запуске или способе, которым он действует по умолчанию.
Во время выполнения Вы используете NSUserDefaults
возразите для чтения значений по умолчанию, которые приложение использует от базы данных значений по умолчанию пользователя. NSUserDefaults
кэширует информацию, чтобы избежать иметь необходимость открыть базу данных значений по умолчанию пользователя каждый раз, когда Вам нужно значение по умолчанию. synchronize
метод, автоматически вызывающийся в периодических интервалах, сохраняет в кэше памяти в синхронизации с базой данных значений по умолчанию пользователя.
NSUserDefaults
класс обеспечивает удобные методы для доступа к общим типам, таким как плавания, удваивается, целые числа, булевские переменные и URLs. Объект по умолчанию должен быть списком свойств, т.е. экземпляром (или для наборов комбинация экземпляров): NSData
, NSString
, NSNumber
, NSDate
, NSArray
, или NSDictionary
. Если Вы хотите сохранить какой-либо другой тип объекта, необходимо обычно архивировать его для создания экземпляра NSData
. Для получения дополнительной информации см. Руководство по программированию Предпочтений и Настроек.
Значения возвратились из NSUserDefaults
даже если Вы устанавливаете непостоянный объект как значение, являются неизменными. Например, если Вы устанавливаете непостоянную строку как значение для "MyStringDefault"
, строка Вы позже получаете использование stringForKey:
будет неизменным.
База данных значений по умолчанию создается автоматически для каждого пользователя. NSUserDefaults
класс в настоящее время не поддерживает предпочтения на узел. Чтобы сделать это, необходимо использовать API CFPreferences (см. Предпочтительную Ссылку Утилит). Однако NSUserDefaults
правильно предпочтения чтений на узел, таким образом, можно безопасно смешать код CFPreferences с NSUserDefaults
код.
Если Ваши управляемые среды поддержки приложений, можно использовать NSUserDefaults
объект определить, какими предпочтениями управляет администратор в пользу пользователя. Управляемые среды соответствуют компьютерным лабораториям или классам, где администратор или учитель могут хотеть сконфигурировать системы определенным способом. В этих ситуациях учитель может установить ряд предпочтений по умолчанию и вызвать те предпочтения на пользователях. Если предпочтением управляют этим способом, приложения должны препятствовать тому, чтобы пользователи редактировали то предпочтение путем отключения любых надлежащих средств управления.
NSUserDefaults
класс ориентирован на многопотоковое исполнение.
Персистентность NSURL и ссылки на файл URLs
При использовании экземпляров NSURL для обращения к файлам в процессе важно сделать различие между основанным на местоположении отслеживанием (файл: схема URLs, которые являются в основном путями) по сравнению с отслеживанием идентификационных данных файловой системы (файл: схема URLs, которые являются ссылкой на файл URLs). При сохранении NSURL необходимо принять то поведение во внимание. Если Ваше приложение отслеживает ресурс, располагаемый его идентификационными данными так, чтобы можно было найти, перемещает ли пользователь файл, то необходимо явно записать данные закладки NSURL или закодировать ссылку на файл URL.
Если Вы хотите отследить файл ссылкой, но Вы требуете явного управления, когда разрешение происходит, необходимо заботиться, чтобы выписать данные закладки к NSUserDefaults, а не полагаться - [NSUserDefaults setURL:forKey:]. Это позволяет Вам вызывать + [NSURL URLByResolvingBookmarkData:options:relativeToURL:bookmarkDataIsStale:error:] в то время, когда Вы будете знать, Ваше приложение будет в состоянии обработать потенциальный I/O или требуемые взаимодействия пользовательского интерфейса.
Соображения песочницы
Поигравшее в песочнице приложение не может получить доступ или изменить предпочтения любого другого приложения. (Например, если Вы добавляете доменное использование другого приложения addSuiteNamed:
метод, Вы не получаете доступ к предпочтениям того приложения.)
Попытка получить доступ или изменить предпочтения другого приложения не приводит к ошибке, но когда Вы делаете, OS X фактически читает и пишет файлы, расположенные в контейнере Вашего приложения, а не фактических предпочтительных файлах для другого приложения.
Наследование
-
NSObject
-
NSUserDefaults
-
ScreenSaverDefaults
-
NSObject
-
NSUserDefaults
-
ScreenSaverDefaults
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает совместно используемый объект значений по умолчанию.
Объявление
Swift
class func standardUserDefaults() -> NSUserDefaults
Objective C
+ (NSUserDefaults *)standardUserDefaults
Возвращаемое значение
Совместно используемый объект значений по умолчанию.
Обсуждение
Если совместно используемый объект значений по умолчанию еще не существует, он создается с поисковым списком, содержащим имена следующих доменов в этом порядке:
NSArgumentDomain
, состоять из значений по умолчанию проанализировано от параметров приложенияДомен идентифицируется идентификатором пакета приложения
NSGlobalDomain
, состоять из значений по умолчанию означало быть замеченным всеми приложениямиОтдельные домены для каждого из предпочтительных языков пользователя
NSRegistrationDomain
, ряд временных значений по умолчанию, значения которых могут быть установлены приложением гарантировать, что поиски всегда будут успешны
Значения по умолчанию инициализируются для текущего пользователя. Последующие модификации к стандартному поисковому списку остаются в силе, даже когда этот метод вызывается снова — поисковый список, как гарантируют, будет стандартным только в первый раз, когда этот метод вызывается.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Синхронизирует любые изменения, внесенные в совместно используемый пользовательский объект значений по умолчанию, и выпускает его из памяти.
Объявление
Swift
class func resetStandardUserDefaults()
Objective C
+ (void)resetStandardUserDefaults
Обсуждение
Последующий вызов
standardUserDefaults
создает новый совместно используемый пользовательский объект значений по умолчанию со стандартным поисковым списком.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
NSUserDefaults
объект инициализируется со значениями по умолчанию для текущей учетной записи пользователя.Объявление
Swift
convenience init()
Objective C
- (instancetype)init
Возвращаемое значение
Инициализированный
NSUserDefaults
возразите, чей параметр и регистрационные домены уже устанавливаются.Обсуждение
Этот метод ничего не помещает в поисковый список. Вызовите его, только если Вы выделили свое собственное
NSUserDefaults
экземпляр вместо того, чтобы использовать совместно используемый.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
initWithUser: - initWithUser:
(OS X v10.9)Возвраты
NSUserDefaults
объект инициализируется со значениями по умолчанию для указанной учетной записи пользователя.Оператор осуждения
Этот метод никогда не реализовывался для возврата чего-либо кроме значений по умолчанию для текущего пользователя. Использовать
standardUserDefaults
вместо этого.Объявление
Objective C
- (id)initWithUser:(NSString *)
username
Параметры
username
Имя учетной записи пользователя.
Возвращаемое значение
Инициализированный
NSUserDefaults
возразите, чей параметр и регистрационные домены уже устанавливаются. Если у текущего пользователя нет доступа к указанной учетной записи пользователя, этот метод возвратыnil
.Обсуждение
Этот метод ничего не помещает в поисковый список. Вызовите его, только если Вы выделили свое собственное
NSUserDefaults
экземпляр вместо того, чтобы использовать совместно используемый.Вы обычно не используете этот метод для инициализации экземпляра
NSUserDefaults
. Приложения, использованные суперпользователем, могли бы использовать этот метод для обновления баз данных значений по умолчанию для многих пользователей. У пользователя, запустившего приложение, должен быть надлежащий доступ (чтение, запишите, или оба) к базе данных значений по умолчанию нового пользователя или этому методу возвратыnil
.Специальные замечания
Этот метод никогда не реализовывался, чтобы сделать что-либо кроме возврата значения по умолчанию для текущего пользователя.
Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
См. также
-
init (suiteName:) - initWithSuiteName:
Определяемый инициализаторВозвраты
NSUserDefaults
объект инициализируется со значениями по умолчанию для указанной группы приложений.Объявление
Swift
init?(suiteName
suitename
: String)Objective C
- (instancetype)initWithSuiteName:(NSString *)
suitename
Параметры
suitename
Имя группы приложений.
Если Вы передаете
nil
к этому параметру система использует поисковый список по умолчанию чтоstandardUserDefaults
использование метода класса.Возвращаемое значение
Инициализированный
NSUserDefaults
возразите, чей параметр и регистрационные домены уже устанавливаются.Обсуждение
Используйте этот метод в сценариях, таких как:
При разработке комплекта приложения, для совместного использования предпочтений или других данных среди приложений
При разработке расширения приложения, для совместного использования предпочтений или других данных между расширением и его содержанием приложения
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.9 и позже.
-
Добавляет содержание указанного словаря к регистрационному домену.
Объявление
Swift
func registerDefaults(_
dictionary
: [NSObject : AnyObject])Objective C
- (void)registerDefaults:(NSDictionary *)
dictionary
Параметры
dictionary
Словарь ключей и значений Вы хотите зарегистрироваться.
Обсуждение
Если нет никакого регистрационного домена, каждый создается с помощью указанного словаря, и
NSRegistrationDomain
добавляется до конца поискового списка.Содержание регистрационного домена не записано в диск; необходимо вызвать этот метод каждый раз, когда приложение запускается. Можно поместить plist файл в каталог и вызов Resources приложения
registerDefaults:
с содержанием, в котором Вы читаете из того файла.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает массив, связанный с указанным ключом.
Объявление
Swift
func arrayForKey(_
defaultName
: String) -> [AnyObject]?Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Массив связался с указанным ключом, или
nil
если ключ не существует, или его значение неNSArray
объект.Специальные замечания
Возвращенный массив и его содержание являются неизменными, даже если значения, которые Вы первоначально устанавливаете, были непостоянными.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает булево значение, связанное с указанным ключом.
Объявление
Swift
func boolForKey(_
defaultName
: String) -> BoolObjective C
- (BOOL)boolForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Если булево значение связано с
defaultName
в пользовательских значениях по умолчанию возвращается то значение. Иначе,NO
false
возвращается.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает объект данных, связанный с указанным ключом.
Объявление
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Объект данных связался с указанным ключом, или
nil
если ключ не существует, или его значение неNSData
объект.Специальные замечания
Возвращенный объект данных является неизменным, даже если значение, которое Вы первоначально устанавливаете, было непостоянным объектом данных.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает объект словаря, связанный с указанным ключом.
Объявление
Objective C
- (NSDictionary *)dictionaryForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Объект словаря связался с указанным ключом, или
nil
если ключ не существует, или его значение неNSDictionary
объект.Специальные замечания
Возвращенный словарь и его содержание являются неизменными, даже если значения, которые Вы первоначально устанавливаете, были непостоянными.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает значение с плавающей точкой, связанное с указанным ключом.
Объявление
Swift
func floatForKey(_
defaultName
: String) -> FloatObjective C
- (float)floatForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Значение с плавающей точкой связалось с указанным ключом. Если ключ не существует, этот метод возвраты
0
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает целочисленное значение, связанное с указанным ключом..
Объявление
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Целочисленное значение связалось с указанным ключом. Если указанный ключ не существует, этот метод возвраты
0
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает объект, связанный с первым возникновением указанного значения по умолчанию.
Объявление
Swift
func objectForKey(_
defaultName
: String) -> AnyObject?Objective C
- (id)objectForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Объект связался с указанным ключом, или
nil
если не был найден ключ.Обсуждение
Этот метод ищет домены, включенные в поисковый список в порядке, они перечислены.
Специальные замечания
Возвращенный объект является неизменным, даже если значение, которое Вы первоначально устанавливаете, было непостоянным.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает массив строк, связанных с указанным ключом.
Объявление
Swift
func stringArrayForKey(_
defaultName
: String) -> [AnyObject]?Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Массив
NSString
объекты, илиnil
если указанное значение по умолчанию не существует, значение по умолчанию не содержит массив, или массив не содержитNSString
объекты.Специальные замечания
Возвращенный массив и его содержание являются неизменными, даже если значения, которые Вы первоначально устанавливаете, были непостоянными.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает строку, связанную с указанным ключом.
Объявление
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Для строковых значений строка связалась с указанным ключом. Для числовых значений, строкового значения числа. Возвраты
nil
если значение по умолчанию не существует или не является строкой или числовым значением.Специальные замечания
Возвращаемая строка является неизменной, даже если значение, которое Вы первоначально устанавливаете, было непостоянной строкой.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает двойное значение, связанное с указанным ключом.
Объявление
Objective C
- (double)doubleForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
Двойное значение связалось с указанным ключом. Если ключ не существует, этот метод возвраты
0
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Возвраты
NSURL
экземпляр связался с указанным ключом.Объявление
Параметры
defaultName
Ключ в базе данных значений по умолчанию текущего пользователя.
Возвращаемое значение
NSURL
значение экземпляра связалось с указанным ключом. Если ключ не существует, этот метод возвратыnil
.Обсуждение
Когда NSURL читается с помощью - [NSUserDefaults URLForKey:], следующая логика используется:
Если значение для ключа
NSData
,NSData
используется в качестве параметра+[NSKeyedUnarchiver unarchiveObjectWithData:]
. ЕслиNSData
может быть разархивирован как NSURL, NSURL возвращается иначе, ноль возвращается.Если значение для этого ключа было ссылкой на файл URL, ссылка на файл, URL будет создаваться, но его данные закладки не будут разрешены, пока экземпляр NSURL не будет позже использоваться (например, в
-[NSData initWithContentsOfURL:]
).Если значение для ключа будет NSString, начинающимся с ~, то NSString будет расширен с помощью
-[NSString stringByExpandingTildeInPath]
и файл: схема NSURL будет создаваться из этого.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
Устанавливает значение указанного ключа по умолчанию к указанному булеву значению.
Объявление
Swift
func setBool(_
value
: Bool, forKeydefaultName
: String)Objective C
- (void)setBool:(BOOL)
value
forKey:(NSString *)defaultName
Параметры
value
Булево значение для хранения в базе данных значений по умолчанию.
defaultName
Ключ, с которым можно связаться со значением.
Обсуждение
Вызывает
setObject:forKey:
как часть его реализации.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает значение указанного ключа по умолчанию к указанному значению с плавающей точкой.
Объявление
Swift
func setFloat(_
value
: Float, forKeydefaultName
: String)Objective C
- (void)setFloat:(float)
value
forKey:(NSString *)defaultName
Параметры
value
Значение с плавающей точкой для хранения в базе данных значений по умолчанию.
defaultName
Ключ, с которым можно связаться со значением.
Обсуждение
Вызывает
setObject:forKey:
как часть его реализации.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает значение указанного ключа по умолчанию к указанному целочисленному значению.
Объявление
Параметры
value
Целочисленное значение для хранения в базе данных значений по умолчанию.
defaultName
Ключ, с которым можно связаться со значением.
Обсуждение
Вызывает
setObject:forKey:
как часть его реализации.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Наборы значение указанного значения по умолчанию вводят стандартный домен приложения.
Объявление
Swift
func setObject(_
value
: AnyObject?, forKeydefaultName
: String)Objective C
- (void)setObject:(id)
value
forKey:(NSString *)defaultName
Параметры
value
Объект сохранить в базе данных значений по умолчанию.
defaultName
Ключ, с которым можно связаться со значением.
Обсуждение
value
параметр может быть только объектами списка свойств:NSData
,NSString
,NSNumber
,NSDate
,NSArray
, илиNSDictionary
. ДляNSArray
иNSDictionary
объекты, их содержание должно быть объектами списка свойств. Посмотрите то, Что Список свойств? в Руководстве по программированию Списка свойств.Установка значения по умолчанию не имеет никакого эффекта на значение, возвращенное
objectForKey:
метод, если тот же ключ существует в домене, предшествующем домену приложения в поисковом списке.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает значение указанного ключа по умолчанию к двойному значению.
Объявление
Objective C
- (void)setDouble:(double)
value
forKey:(NSString *)defaultName
Параметры
value
Двойное значение.
defaultName
Ключ, с которым можно связаться со значением.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Устанавливает значение указанного ключа по умолчанию к указанному URL.
Объявление
Параметры
url
NSURL
сохранить в базе данных значений по умолчанию.defaultName
Ключ, с которым можно связаться со значением.
Обсуждение
Когда NSURL сохранен с помощью - [NSUserDefaults setURL:forKey:], некоторые корректировки внесены:
Любой нефайл URL записан путем вызова
+[NSKeyedArchiver archivedDataWithRootObject:]
использование экземпляра NSURL как корневой объект.Любая ссылка на файл
file:
схема URL будет обработана как нефайл URL, и информация, делающая этот URL совместимым с 10,5 системами, будет также записана как часть архива, а также его минимальных данных закладки.Любой находящийся на пути файл: если путь может быть сделан относительно корневого каталога пользователя, схема URL записана первым взятием абсолютного URL, получением пути от этого и затем определения. Если это может, строка, которая будет сокращаться при помощи
stringByAbbreviatingWithTildeInPath
и выписанный. Это позволяет пред10.6 клиентам читать значение по умолчанию и использование-[NSString stringByExpandingTildeInPath]
использовать эту информацию.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
Удаляет значение указанного значения по умолчанию, вводят стандартный домен приложения.
Объявление
Swift
func removeObjectForKey(_
defaultName
: String)Objective C
- (void)removeObjectForKey:(NSString *)
defaultName
Параметры
defaultName
Ключ, значение которого Вы хотите удалить.
Обсуждение
Удаление значения по умолчанию не имеет никакого эффекта на значение, возвращенное
objectForKey:
метод, если тот же ключ существует в домене, предшествующем стандартному домену приложения в поисковом списке.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Записи любые модификации к персистентным доменам к диску и обновлениям все неизмененные персистентные домены к тому, что находится на диске.
Объявление
Swift
func synchronize() -> Bool
Objective C
- (BOOL)synchronize
Возвращаемое значение
YES
true
если данные были сохранены успешно к диску, иначеNO
false
.Обсуждение
Поскольку этот метод автоматически вызывается в периодических интервалах, используйте этот метод, только если Вы не можете ожидать автоматической синхронизации (например, если Ваше приложение собирается выйти), или если Вы хотите обновить пользовательские значения по умолчанию к тому, что находится на диске даже при том, что Вы не внесли изменений.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает словарь, содержащий ключи и значения в указанном персистентном домене.
Объявление
Objective C
- (NSDictionary *)persistentDomainForName:(NSString *)
domainName
Параметры
domainName
Домен, ключи которого и значения Вы хотите.
Возвращаемое значение
Словарь, содержащий ключи. Ключи являются именами значений по умолчанию, и значение, соответствующее каждому ключу, является объектом списка свойств (
NSData
,NSString
,NSNumber
,NSDate
,NSArray
, илиNSDictionary
).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
persistentDomainNames - persistentDomainNames
(OS X v10.9)Возвращает массив текущих персистентных доменных имен.
Оператор осуждения
Вместо того, чтобы использовать этот метод, необходимо отследить домены, которые Вы добавляете, хотите ли Вы позже получить их с
persistentDomainForName:
.Объявление
Objective C
- (NSArray *)persistentDomainNames
Возвращаемое значение
Массив
NSString
объекты, содержащие доменные имена.Обсуждение
Можно получить ключи и значения для каждого домена путем передачи возвращенных доменных имен
persistentDomainForName:
метод.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
-
Удаляет содержание указанного персистентного домена от значений по умолчанию пользователя.
Объявление
Swift
func removePersistentDomainForName(_
domainName
: String)Objective C
- (void)removePersistentDomainForName:(NSString *)
domainName
Параметры
domainName
Домен, ключи которого и значения Вы хотите.
Обсуждение
Когда персистентный домен изменяется,
NSUserDefaultsDidChangeNotification
отправляется.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает словарь для указанного персистентного домена.
Объявление
Objective C
- (void)setPersistentDomain:(NSDictionary *)
domain
forName:(NSString *)domainName
Параметры
domain
Словарь ключей и значений Вы хотите присвоиться к домену.
domainName
Домен, ключи которого и значения Вы хотите установить. Это значение должно быть равно идентификатору пакета Вашего приложения.
Обсуждение
Когда персистентный домен изменяется,
NSUserDefaultsDidChangeNotification
отправляется.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает булево значение, указывающее, управляет ли указанным ключом администратор.
Объявление
Swift
func objectIsForcedForKey(_
key
: String) -> BoolObjective C
- (BOOL)objectIsForcedForKey:(NSString *)
key
Параметры
key
Ключ, состояние которого Вы хотите проверить.
Возвращаемое значение
YES
true
если значением указанного ключа управляет администратор, иначеNO
false
.Обсуждение
Этот метод предполагает, что ключ является предпочтением, связанным с текущим пользователем и приложением. Для управляемых ключей приложение должно отключить любой пользовательский интерфейс, позволяющий пользователю изменять значение
key
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Возвращает булево значение, указывающее, управляет ли ключом в указанном домене администратор.
Объявление
Параметры
key
Ключ, состояние которого Вы хотите проверить.
domain
Домен ключа.
Возвращаемое значение
YES
true
если ключом управляет администратор в указанном домене, иначеNO
false
.Обсуждение
Этот метод предполагает, что ключ является предпочтением, связанным с текущим пользователем. Для управляемых ключей приложение должно отключить любой пользовательский интерфейс, позволяющий пользователю изменять значение
key
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Возвращает словарь, содержащий объединение всех пар ключ/значение в доменах в поисковом списке.
Объявление
Swift
func dictionaryRepresentation() -> [NSObject : AnyObject]
Objective C
- (NSDictionary *)dictionaryRepresentation
Возвращаемое значение
Словарь, содержащий ключи. Ключи являются именами значений по умолчанию, и значение, соответствующее каждому ключу, является объектом списка свойств (
NSData
,NSString
,NSNumber
,NSDate
,NSArray
, илиNSDictionary
).Обсуждение
Как с
objectForKey:
, пары ключ/значение в доменах, которые находятся ранее в поисковом списке, имеют приоритет. Объединенный результат не сохраняет информацию, о котором домене каждая запись прибыла из.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет указанный энергозависимый домен из значений по умолчанию пользователя.
Объявление
Swift
func removeVolatileDomainForName(_
domainName
: String)Objective C
- (void)removeVolatileDomainForName:(NSString *)
domainName
Параметры
domainName
Энергозависимый домен Вы хотите удалить.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает словарь для указанного энергозависимого домена.
Объявление
Objective C
- (void)setVolatileDomain:(NSDictionary *)
domain
forName:(NSString *)domainName
Параметры
domain
Словарь ключей и значений Вы хотите присвоиться к домену.
domainName
Домен, ключи которого и значения Вы хотите установить.
Обсуждение
Этот метод повышает
NSInvalidArgumentException
если уже существует энергозависимый домен с указанным именем.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает словарь для указанного энергозависимого домена.
Объявление
Objective C
- (NSDictionary *)volatileDomainForName:(NSString *)
domainName
Параметры
domainName
Домен, ключи которого и значения Вы хотите.
Возвращаемое значение
Словарь ключей и значений, принадлежащих домену. Ключи в словаре являются именами значений по умолчанию, и значение, соответствующее каждому ключу, является объектом списка свойств (
NSData
,NSString
,NSNumber
,NSDate
,NSArray
, илиNSDictionary
).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
volatileDomainNames volatileDomainNames
СвойствоТекущие энергозависимые доменные имена. (только для чтения)
Объявление
Swift
var volatileDomainNames: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *volatileDomainNames
Обсуждение
Доменные имена представлены как строки. Можно получить содержание каждого домена путем передачи возвращенных доменных имен
volatileDomainForName:
метод.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Указывает указанное доменное имя в поисковый список получателя.
Объявление
Swift
func addSuiteNamed(_
suiteName
: String)Objective C
- (void)addSuiteNamed:(NSString *)
suiteName
Параметры
suiteName
Доменное имя для вставки. Этот домен вставляется после домена приложения.
Обсуждение
suiteName
домен подобен строке идентификатора пакета, но не обязательно связывается к определенному приложению или пакету. Комплект может использоваться для содержания предпочтений, совместно использующихся многократными приложениями.Поиски предпочтений, связанных к комплекту, следуют за нормальным образцом, ища сначала текущего пользователя, текущий узел, тогда
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет указанное доменное имя из поискового списка получателя.
Объявление
Swift
func removeSuiteNamed(_
suiteName
: String)Objective C
- (void)removeSuiteNamed:(NSString *)
suiteName
Параметры
suiteName
Доменное имя для удаления.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Эти константы указывают различные пользовательские домены значений по умолчанию.
Объявление
Swift
let NSGlobalDomain: NSString! let NSArgumentDomain: NSString! let NSRegistrationDomain: NSString!
Objective C
extern NSString *NSGlobalDomain; extern NSString *NSArgumentDomain; extern NSString *NSRegistrationDomain;
Константы
-
NSGlobalDomain
NSGlobalDomain
Домен, состоящий из значений по умолчанию, означал быть замеченным всеми приложениями.
Доступный в OS X v10.0 и позже.
-
NSArgumentDomain
NSArgumentDomain
Домен, состоящий из значений по умолчанию, проанализирован от параметров приложения. Это одна или более пар формы - значение по умолчанию, включенное в вызов командной строки приложения.
Доступный в OS X v10.0 и позже.
-
NSRegistrationDomain
NSRegistrationDomain
Домен, состоящий из ряда временных значений по умолчанию, значения которых могут быть установлены приложением гарантировать, что поиски всегда будут успешны.
Доступный в OS X v10.0 и позже.
-
-
NSUserDefaults
класс обеспечивает следующие константы как удобство. Они обеспечивают доступ к значениям ключей к словарю локали, обсужденному в Руководстве по программированию Предпочтений и Настроек.Посмотрите
NSDateFormatter
и руководство по форматированию данных.Объявление
Objective C
extern NSString *NSAMPMDesignation; extern NSString *NSDateFormatString; extern NSString *NSDateTimeOrdering; extern NSString *NSEarlierTimeDesignations; extern NSString *NSHourNameDesignations; extern NSString *NSLaterTimeDesignations; extern NSString *NSMonthNameArray; extern NSString *NSNextDayDesignations; extern NSString *NSNextNextDayDesignations; extern NSString *NSPriorDayDesignations; extern NSString *NSShortDateFormatString; extern NSString *NSShortMonthNameArray; extern NSString *NSShortTimeDateFormatString; extern NSString *NSShortWeekDayNameArray; extern NSString *NSThisDayDesignations; extern NSString *NSTimeDateFormatString; extern NSString *NSTimeFormatString; extern NSString *NSWeekDayNameArray; extern NSString *NSYearMonthWeekDesignations;
Константы
-
NSAMPMDesignation
NSAMPMDesignation
Ключ для значения, указывающего, как обозначения утра и дня распечатаны, влияя на строки, использующие
%p
спецификатор формата.Использовать
AMSymbol
илиPMSymbol
(NSDateFormatter
) вместо этого.Значениями по умолчанию является «AM» и «PM».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSDateFormatString
NSDateFormatString
Ключ для строки формата, указывающей как, как даты распечатаны с помощью спецификаторов формата даты.
Используйте надлежащий API от
NSDateFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию должно использовать будние имена с полными именами месяца и целые годы, как в «суббота, 24 марта 2001».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSDateTimeOrdering
NSDateTimeOrdering
Ключ для строки, указывающей, как использовать неоднозначные числа в строках даты.
Укажите это значение как перестановку букв M (месяц), D (день), Y (год) и H (час). Например, MDYH обрабатывает «2/3/01 10» как 3-й день февраля 2001 в 10:00, тогда как DMYH обрабатывает то же значение как 2-й день марта 2001 в 10:00. Если меньше чисел указано, чем необходимо, числа приоритезированы для удовлетворения дня сначала, то месяц, и затем год. Например, при предоставлении только значения 12 это означает 12-й день этого месяца в этом году, потому что должен быть указан день. Если Вы предоставляете “2 12”, это означает или 12 февраля или 2 декабря, в зависимости от того, если упорядочивание является «MDYH» или «DMYH».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSEarlierTimeDesignations
NSEarlierTimeDesignations
Ключ для массива строк, обозначающих время в прошлом.
Нет никакой прямой замены. Если необходимо локализовать слова такой столь «предшествующий», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Это прилагательные, изменяющие значения от
NSYearMonthWeekDesignations
. Значения по умолчанию являются «предшествующими», «в последний раз», «мимо», и «назад».Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSHourNameDesignations
NSHourNameDesignations
Ключ для строк, идентифицирующих время суток.
Эти строки должны быть связаны с часом. Значение по умолчанию является этим массивом массивов: (0, полночь), (10, утро), (12, полдень, ланч), (14, день), (19, ужин).
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSLaterTimeDesignations
NSLaterTimeDesignations
Ключ для массива строк, обозначающих время в будущем.
Нет никакой прямой замены. Если необходимо локализовать слова такой настолько «следующий», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Строки в этом массиве являются прилагательными, изменяющими значение от
NSYearMonthWeekDesignations
.Значение по умолчанию является массивом, содержащим единственную строку, «затем».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSMonthNameArray
NSMonthNameArray
Ключ для значения, указывающего имена в течение месяцев, влияя на строки, использующие
%B
спецификатор формата.Использовать
monthSymbols
или — если Вы собираетесь вывести на экран их в пользовательском интерфейсе собой —standaloneMonthSymbols
(NSDateFormatter
) вместо этого.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSNextDayDesignations
NSNextDayDesignations
Ключ для массива строк, обозначающих на следующий день сегодня.
Нет никакой прямой замены. Если необходимо локализовать слова такой как «завтра», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Значение по умолчанию является массивом, содержащим единственную строку «завтра».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSNextNextDayDesignations
NSNextNextDayDesignations
Ключ для массива строк, обозначающих послезавтра.
Нет никакой прямой замены. Если необходимо локализовать слова, такие как «nextday», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Значение по умолчанию является массивом, содержащим единственную строку, «nextday».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSPriorDayDesignations
NSPriorDayDesignations
Ключ для массива строк, обозначающих накануне сегодня.
Нет никакой прямой замены. Если необходимо локализовать слова такой как «вчера», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Значение по умолчанию является массивом, содержащим единственную строку «вчера».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSShortDateFormatString
NSShortDateFormatString
Ключ для строки формата, указывающей, как сокращены даты.
Используйте надлежащий API от
NSDateFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию должно разделить дневной месяц и год с наклонными чертами и помещать день сначала, как в 31.10.01.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSShortWeekDayNameArray
NSShortWeekDayNameArray
Ключ для массива строк, указывающих сокращения в течение дней недели, влияя на строки, использующие %a спецификатор формата.
Использовать
shortWeekdaySymbols
или — если Вы собираетесь вывести на экран их в пользовательском интерфейсе собой —shortStandaloneWeekdaySymbols
(NSDateFormatter
) вместо этого.Воскресенье должно быть первым днем недели.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSShortMonthNameArray
NSShortMonthNameArray
Ключ для массива строк, указывающих сокращения в течение месяцев, влияя на строки, использующие
%b
спецификатор формата.Использовать
shortMonthSymbols
или — если Вы собираетесь вывести на экран их в пользовательском интерфейсе собой —shortStandaloneMonthSymbols
(NSDateFormatter
) вместо этого.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSShortTimeDateFormatString
NSShortTimeDateFormatString
Ключ для строки формата, указывающей, как сокращены времена и даты.
Используйте надлежащий API от
NSDateFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию должно использовать тире, чтобы разделить день, месяц и год и использовать 12-часовые часы, как в «31 Яне 01 13:30».]
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSThisDayDesignations
NSThisDayDesignations
Ключ для массива строк, указывающих то, что в этот день вызывают.
Нет никакой прямой замены. Если необходимо локализовать слова такой как «сегодня», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Значение по умолчанию является массивом, содержащим две строки, «сегодня» и «теперь».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSTimeDateFormatString
NSTimeDateFormatString
Ключ для значения, указывающего, как даты с временами распечатаны, влияя на строки, использующие спецификаторы формата
%c
,%X
, или%x
.Используйте надлежащий API от
NSDateFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию должно использовать полные имена месяца и дни с 24-часовыми часами, как в «воскресенье, 01 января 2001 Тихоокеанском времени 23:00:00».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSTimeFormatString
NSTimeFormatString
Ключ для строки формата, указывающей, как распечатаны даты с временами.
Используйте надлежащий API от
NSDateFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию должно использовать 12-часовые часы.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSWeekDayNameArray
NSWeekDayNameArray
Ключ для массива строк, указывающих имена в течение дней недели, влияя на строки, использующие
%A
спецификатор формата.Использовать
weekdaySymbols
или — если Вы собираетесь вывести на экран их в пользовательском интерфейсе собой —standaloneWeekdaySymbols
(NSDateFormatter
) вместо этого.Воскресенье должно быть первым днем недели.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSYearMonthWeekDesignations
NSYearMonthWeekDesignations
Ключ для массива строк, указывающих слова в течение года, месяца и недели в текущей локали.
Нет никакой прямой замены. Если необходимо локализовать слова, такие как «год», необходимо использовать строковый файл, как Вы были бы для любого другого локализуемого текста — посмотрите Строковые ресурсы Локализации.
Значения по умолчанию являются «годом», «месяцем» и «неделей».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
-
NSUserDefaults
класс обеспечивает следующие константы как удобство. Они обеспечивают доступ к значениям ключей к словарю локали, обсужденному в Руководстве по программированию Предпочтений и Настроек.Эти константы осуждаются в OS X v10.5. Где существуют замены, можно обычно находить их в
NSNumberFormatter
илиNSLocale
— например,currencySymbol
,currencyDecimalSeparator
, иthousandSeparator
— иначе необходимо использовать образцы, описанные в Руководстве по Форматированию данных.Объявление
Objective C
extern NSString *NSCurrencySymbol; extern NSString *NSDecimalDigits; extern NSString *NSDecimalSeparator; extern NSString *NSInternationalCurrencyString; extern NSString *NSNegativeCurrencyFormatString; extern NSString *NSPositiveCurrencyFormatString; extern NSString *NSThousandsSeparator;
Константы
-
NSCurrencySymbol
NSCurrencySymbol
Строка, указывающая символ, раньше обозначала валюту на этом языке.
Использовать
currencySymbol
(NSNumberFormatter
) или получитеNSLocaleCurrencySymbol
от текущей локали вместо этого.Значение по умолчанию является «$».
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSDecimalDigits
NSDecimalDigits
Строки, идентифицирующие десятичные цифры в дополнение к или вместо цифр ASCII.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSDecimalSeparator
NSDecimalSeparator
Строка, указывающая десятичный разделитель.
Использовать
decimalSeparator
илиcurrencyDecimalSeparator
(NSNumberFormatter
) или получитеNSLocaleDecimalSeparator
от текущей локали вместо этого.Десятичный разделитель разделяет тех место от места десятых частей. Значение по умолчанию “
.
”.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSInternationalCurrencyString
NSInternationalCurrencyString
Строка, содержащая сокращение с тремя буквами для валюты, после стандарта ISO 4217.
Получите
NSLocaleCurrencySymbol
от текущей локали вместо этого.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSNegativeCurrencyFormatString
NSNegativeCurrencyFormatString
Строка формата, указывающая, как отрицательные числа распечатаны при представлении валютной ценности.
Используйте надлежащий API от
NSNumberFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию
–$9,999.00
.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSPositiveCurrencyFormatString
NSPositiveCurrencyFormatString
Строка формата, указывающая, как положительные числа распечатаны при представлении валютной ценности.
Используйте надлежащий API от
NSNumberFormatter
вместо этого — посмотрите Руководство по Форматированию данных.Значение по умолчанию
$9,999.00
.Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
NSThousandsSeparator
NSThousandsSeparator
Строка, указывающая символ разделителя для тысяч места десятичного числа.
Получите
NSLocaleGroupingSeparator
от текущей локали вместо этого.Значение по умолчанию является запятой.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.5.
-
-
Когда изменение внесено в значения по умолчанию в персистентном домене, это уведомление отправляется.
Объект уведомления
NSUserDefaults
объект. Это уведомление не содержит auserInfo
словарь.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.