Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы основы ссылка класса NSBundle

Опции
Развертывание Target:

На этой странице
Язык:

NSBundle

NSBundle объект представляет расположение в файловой системе, что код групп и ресурсы, которые могут использоваться в программе. NSBundle объекты определяют местоположение ресурсов программы, динамично загружают и разгружают исполняемый код и помогают в локализации. Вы создаете пакет в XCode с помощью одних из этих типов проектов: Приложение, Платформа, плагины.

Несмотря на то, что структуры пакета варьируются в зависимости от целевой платформы и типа пакета, Вы создаете, NSBundle класс скрывает эту глубинную структуру в большинстве (но не все) случаи. Многие методы, которые Вы используете для загрузки ресурсов из пакета автоматически, определяют местоположение надлежащего начального каталога и ищут ресурсы в известных местах. Для получения информации о структурах комплекта приложений (для OS X и iOS), см. Руководство по программированию Пакета. Для получения информации о структуре пакетов платформы см. Руководство по программированию Платформы. Для получения информации о структуре плагинов OS X посмотрите, что Код Загружает Темы Программирования.

Для получения дополнительной информации о том, как загрузить файлы пера и изображения в приложении Mac, посмотрите дополнительную NSBundle AppKit Ссылку. Для получения информации о том, как загрузить файлы пера в приложении для iOS, см. NSBundle UIKit Дополнительная Ссылка.

В отличие от некоторых других Фундаментальных классов с соответствующими Базовыми именами Основы (такой как NSString и CFString), NSBundle объекты не могут быть брошены (“бесплатный соединенный мостом”) к ссылкам CFBundle. При необходимости в функциональности, предоставленной в CFBundle можно все еще создать CFBundle и использовать Ссылку CFBundle API. Посмотрите Взаимозаменяемые Типы данных для получения дополнительной информации о бесплатном образовании моста.

Наследование


Соответствует


Оператор импорта


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.0 и позже.
  • Возвраты NSBundle объект, соответствующий указанному файлу URL.

    Объявление

    Objective C

    + (instancetype)bundleWithURL:(NSURL *)url

    Параметры

    url

    URL к каталогу. Это должно быть URL для каталога; если это содержит какие-либо символьные ссылки, они должны быть разрешимыми.

    Возвращаемое значение

    NSBundle соответствующий объект url, или nil если url не идентифицирует доступный каталог пакета.

    Обсуждение

    Если там является не существующим, этот метод выделяет и инициализирует возвращенный объект NSBundle связанный с url, когда это возвращает существующий объект.

    Оператор импорта

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвраты NSBundle объект, соответствующий указанному каталогу.

    Объявление

    Objective C

    + (instancetype)bundleWithPath:(NSString *)fullPath

    Параметры

    fullPath

    Путь к каталогу. Это должно быть полным путем для каталога; если это содержит какие-либо символьные ссылки, они должны быть разрешимыми.

    Возвращаемое значение

    NSBundle соответствующий объект fullPath, или nil если fullPath не идентифицирует доступный каталог пакета.

    Обсуждение

    Если там является не существующим, этот метод выделяет и инициализирует возвращенный объект NSBundle связанный с fullPath, когда это возвращает существующий объект.

    Оператор импорта

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвраты NSBundle объект, инициализированный для соответствия указанному файлу URL.

    Объявление

    Swift

    convenience init?(URL url: NSURL)

    Objective C

    - (instancetype)initWithURL:(NSURL *)url

    Параметры

    url

    Файл URL к каталогу. Это должно быть полным URL для каталога; если это содержит какие-либо символьные ссылки, они должны быть разрешимыми.

    Возвращаемое значение

    NSBundle объект, инициализированный для соответствия url. Этот метод инициализирует и возвращает новый экземпляр, только если нет никакого существующего пакета, связанного с url, иначе это освобождает self и возвращает существующий объект. Если url не существует или у пользователя нет доступа к нему, возвратов nil.

    Обсуждение

    Не необходимо выделить и инициализировать экземпляр для основного пакета; используйте mainBundle метод класса получить этот экземпляр. Можно также использовать bundleWithURL: метод класса получить пакет, идентифицированный его файлом URL.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • init (путь:) - initWithPath: Определяемый инициализатор

    Возвраты NSBundle объект, инициализированный для соответствия указанному каталогу.

    Объявление

    Swift

    init?(path fullPath: String)

    Objective C

    - (instancetype)initWithPath:(NSString *)fullPath

    Параметры

    fullPath

    Путь к каталогу. Это должно быть полным путем для каталога; если это содержит какие-либо символьные ссылки, они должны быть разрешимыми.

    Возвращаемое значение

    NSBundle объект, инициализированный для соответствия fullPath. Этот метод инициализирует и возвращает новый экземпляр, только если нет никакого существующего пакета, связанного с fullPath, иначе это освобождает self и возвращает существующий объект. Если fullPath не существует или у пользователя нет доступа к нему, возвратов nil.

    Обсуждение

    Не необходимо выделить и инициализировать экземпляр для основного пакета; используйте mainBundle метод класса получить этот экземпляр. Можно также использовать bundleWithPath: метод класса получить пакет, идентифицированный его путем к каталогу.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвраты NSBundle объект, с которым связан указанный класс.

    Объявление

    Swift

    init(forClass aClass: AnyClass) -> NSBundle

    Objective C

    + (NSBundle *)bundleForClass:(Class)aClass

    Параметры

    aClass

    Класс.

    Возвращаемое значение

    NSBundle возразите, что динамично загрузился aClass (загружаемый пакет), NSBundle объект тот, для платформы, в который aClass определяется, или основной объект пакета если aClass не был динамично загружен или не определяется в платформе.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращается ранее создаваемый NSBundle экземпляр, имеющий указанный идентификатор пакета.

    Объявление

    Swift

    init?(identifier identifier: String) -> NSBundle

    Objective C

    + (NSBundle *)bundleWithIdentifier:(NSString *)identifier

    Параметры

    identifier

    Идентификатор для существующего NSBundle экземпляр.

    Возвращаемое значение

    Ранее создаваемый NSBundle экземпляр, имеющий идентификатор пакета identifier. Возвраты nil если не найден требуемый пакет.

    Обсуждение

    Этот метод обычно используется платформами и плагинами для определения местоположения их собственного пакета во время выполнения. Этот метод может быть несколько более эффективным, чем попытка определить местоположение пакета с помощью bundleForClass: метод. Однако, если начальный поиск уже загруженного и кэшируемого пакета с указанными сбоями идентификатора, этот метод использует потенциально длительную эвристику, чтобы попытаться определить местоположение пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвраты NSBundle объект, соответствующий каталогу, где расположена текущая исполнимая программа приложения.

    Объявление

    Swift

    class func mainBundle() -> NSBundle

    Objective C

    + (NSBundle *)mainBundle

    Возвращаемое значение

    NSBundle объект, соответствующий каталогу, где исполнимая программа приложения расположена, или nil если не мог бы быть создан объект пакета.

    Обсуждение

    Этот метод выделяет и инициализирует объект пакета, если Вы уже не существуете. Новый объект соответствует каталогу, где расположена исполнимая программа приложения. Обязательно проверьте возвращаемое значение, чтобы удостовериться, что у Вас есть допустимый пакет. Этот метод может возвратить допустимый объект пакета даже для несвязанных приложений.

    В целом основной пакет соответствует пакету файла приложения или обертке приложения: каталог, носящий имя приложения и отмеченный “.app” расширение.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив пакетов неплатформы всего приложения.

    Объявление

    Swift

    class func allBundles() -> [AnyObject]

    Objective C

    + (NSArray *)allBundles

    Возвращаемое значение

    Массив пакетов неплатформы всего приложения.

    Обсуждение

    Возвращенный массив включает основной пакет и все пакеты, динамично созданные, но не содержит пакетов, представляющих платформы.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив всех пакетов приложения, представляющих платформы.

    Объявление

    Swift

    class func allFrameworks() -> [AnyObject]

    Objective C

    + (NSArray *)allFrameworks

    Возвращаемое значение

    Массив всех пакетов приложения, представляющих платформы. Только платформы с одним или более классами Objective C в них включены.

    Обсуждение

    Возвращенный массив включает платформы, соединяющиеся в приложение, когда приложение создается и связывается для динамично созданных платформ.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвраты Class объект для указанного имени.

    Объявление

    Swift

    func classNamed(_ className: String) -> AnyClass?

    Objective C

    - (Class)classNamed:(NSString *)className

    Параметры

    className

    Имя класса.

    Возвращаемое значение

    Class объект для className. Возвраты nil если className если существует ошибка при загрузке исполняемого кода, содержащего реализацию класса, не один из классов, связанных с получателем или.

    Обсуждение

    Если исполняемый код пакета еще не загружается, этот метод динамично загружает его в память. Классы (и категории) загружаются всего из одного файла в каталоге пакета; этот файл кода имеет то же имя как каталог, но без расширения (“.bundle”, “.app”, “.framework”). Как побочный эффект загрузки кода, сообщений получателя NSBundleDidLoadNotification после того, как все классы и категории были загружены; см. Уведомления для подробных данных.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • principalClass principalClass Свойство

    Основной класс пакета. (только для чтения)

    Объявление

    Swift

    var principalClass: AnyClass? { get }

    Objective C

    @property(readonly) Class principalClass

    Обсуждение

    Это свойство установлено после обеспечения, что динамично загружается код, содержащий определение класса. Если пакет встречается с ошибками в загрузке или если это не может найти файл исполняемого кода в каталоге пакета, это свойство nil.

    Основной класс обычно управляет всеми другими классами в пакете; это должно посредничать между теми классами и классами, внешними к пакету. Классы (и категории) загружаются всего из одного файла в каталоге пакета. Пакет получает имя файла кода для загрузки из словаря, возвращенного из infoDictionary, использование “NSExecutable” как ключ. Пакет определяет свой основной класс одним из двух способов:

    • Это сначала смотрит в его собственном информационном словаре, извлекающем информацию, закодированную в списке свойств пакета (Info.plist). Пакет получает основной класс из словаря с помощью ключа NSPrincipalClass. Для незагружаемых пакетов (приложения и платформы), если основной класс не указан в списке свойств, это свойство nil.

    • Если основной класс не указан в информационном словаре, пакет идентифицирует первый класс, загруженный как основной класс. Когда несколько классов соединяются в динамично загружаемый файл, основной класс по умолчанию является первым, перечисленным на ld командная строка. В следующем примере Генератор отчетов был бы основным классом:

    • ld -o myBundle -r Reporter.o NotePad.o QueryList.o

    Порядок классов в браузере XCode проекта является порядком, в котором они будут соединены. Для обозначения основного класса перетащите управление файл, содержащий его реализацию к верхней части списка.

    Как побочный эффект загрузки кода, сообщений получателя NSBundleDidLoadNotification после того, как все классы и категории были загружены; см. Уведомления для подробных данных.

    Следующий метод получает пакет путем указания его пути (bundleWithPath:), затем загружает пакет principalClass и использует основной объект класса, чтобы выделить и инициализировать экземпляр того класса:

    • - (void)loadBundle:(id)sender
    • {
    • Class exampleClass;
    • id newInstance;
    • NSString *path = @"/tmp/Projects/BundleExample/BundleExample.bundle";
    • NSBundle *bundleToLoad = [NSBundle bundleWithPath:path];
    • if (exampleClass = bundleToLoad.principalClass) {
    • newInstance = [[exampleClass alloc] init];
    • [newInstance doSomething];
    • }
    • }

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает файл URL для файла ресурсов, идентифицированного указанным именем и расширением и нахождением в данном каталоге пакета.

    Объявление

    Swift

    func URLForResource(_ name: String, withExtension extension: String?, subdirectory subpath: String?) -> NSURL?

    Objective C

    - (NSURL *)URLForResource:(NSString *)name withExtension:(NSString *)extension subdirectory:(NSString *)subpath

    Параметры

    name

    Имя файла ресурсов, содержавшегося в каталоге, указанном bundleURL.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует и файл, URL является первым файлом, с которым встречаются, это точно соответствует name.

    subpath

    Путь каталога пакета верхнего уровня. Это должно быть допустимым путем. Например, для указания каталога пакета для приложения Mac Вы могли бы указать путь /Applications/MyApp.app.

    Возвращаемое значение

    Файл URL для файла ресурсов или nil если не мог бы быть расположен файл. Этот метод также возвращается nil если пакет, указанный bundlePath параметр не существует или не является читаемым каталогом.

    Обсуждение

    Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает полный путь для файла ресурсов, идентифицированного указанным именем и расширением и нахождением в данном каталоге пакета.

    Объявление

    Swift

    class func pathForResource(_ name: String?, ofType extension: String?, inDirectory bundlePath: String) -> String?

    Objective C

    + (NSString *)pathForResource:(NSString *)name ofType:(NSString *)extension inDirectory:(NSString *)bundlePath

    Параметры

    name

    Имя файла ресурсов, содержавшегося в каталоге, указанном bundlePath.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует, и файл является первым файлом, с которым встречаются, это точно соответствует name.

    bundlePath

    Путь каталога пакета верхнего уровня. Это должно быть допустимым путем. Например, для указания каталога пакета для приложения Mac Вы могли бы указать путь /Applications/MyApp.app.

    Возвращаемое значение

    Полный путь для файла ресурсов или nil если не мог бы быть расположен файл. Этот метод также возвращается nil если пакет, указанный bundlePath параметр не существует или не является читаемым каталогом.

    Обсуждение

    Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает файл URL для ресурса, идентифицированного указанным именем и расширением файла.

    Объявление

    Swift

    func URLForResource(_ name: String, withExtension extension: String?) -> NSURL?

    Objective C

    - (NSURL *)URLForResource:(NSString *)name withExtension:(NSString *)extension

    Параметры

    name

    Имя файла ресурсов.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует и файл, URL является первым файлом, с которым встречаются, это точно соответствует name.

    Возвращаемое значение

    Файл URL для файла ресурсов или nil если не мог бы быть расположен файл.

    Обсуждение

    Если extension пустая строка или nil, возвращенный путь является первым, с которым встречаются, где точно соответствует имя файла name. Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает полный путь для ресурса, идентифицированного указанным именем и расширением файла.

    Объявление

    Swift

    func pathForResource(_ name: String?, ofType extension: String?) -> String?

    Objective C

    - (NSString *)pathForResource:(NSString *)name ofType:(NSString *)extension

    Параметры

    name

    Имя файла ресурсов. Если name пустая строка или nil, возвращает первый файл, с которым встречаются предоставленного типа.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует, и файл является первым файлом, с которым встречаются, это точно соответствует name.

    Возвращаемое значение

    Полный путь для файла ресурсов или nil если не мог бы быть расположен файл.

    Обсуждение

    Метод сначала ищет соответствующий файл ресурсов в нелокализованном каталоге ресурса указанного пакета. Если соответствующий файл ресурсов не найден, это тогда смотрит на верхнем уровне доступного специфичного для языка .lproj папка. (Поисковый порядок на специфичные для языка папки соответствует предпочтениям пользователя.) Это не рекурсивно вызывает через другие подпапки ни в одном из этих расположений. Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Следующий фрагмент кода получает путь к plist в пакете и загружает его в NSDictionary.

    • NSBundle *thisBundle = [NSBundle bundleForClass:[self class]];
    • if (commonDictionaryPath = [thisBundle pathForResource:@"CommonDictionary" ofType:@"plist"]) {
    • theDictionary = [[NSDictionary alloc] initWithContentsOfFile:commonDictionaryPath];
    • }

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив файла URLs для всех ресурсов, идентифицированных указанным расширением файла и расположенных в указанном подкаталоге пакета.

    Объявление

    Swift

    func URLsForResourcesWithExtension(_ extension: String?, subdirectory subpath: String?) -> [AnyObject]?

    Objective C

    - (NSArray *)URLsForResourcesWithExtension:(NSString *)extension subdirectory:(NSString *)subpath

    Параметры

    extension

    Расширение файла файлов для определения местоположения.

    subpath

    Имя подкаталога пакета.

    Возвращаемое значение

    Массив файла URLs для файлов ресурсов или nil если никакие файлы не могли бы быть расположены в subpath с extension. Если никакие файлы ресурсов соответствия не найдены, возвращает пустой массив.

    Обсуждение

    Если subpath nil, этот метод ищет, верхний уровень нелокализовал каталог ресурса и верхний уровень любых специфичных для языка каталогов. (В OS X обычно вызывают нелокализованный каталог ресурса верхнего уровня Resources но в iOS, это - основной каталог пакета.)

    Например, предположите, что у Вас есть приложение Mac с современным пакетом, и Вы указываете @"Documentation" для subpath параметр. Этот метод сначала заглянул бы Contents/Resources/Documentation каталог пакета, сопровождаемого Documentation подкаталоги каждого специфичного для языка .lproj каталог. (Поисковый порядок на специфичные для языка каталоги соответствует предпочтениям пользователя.) Этот метод не рекурсивно вызывает ни через какие другие подкаталоги ни в одном из этих расположений. Для получения дополнительной информации посмотрите Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает полный путь для ресурса, идентифицированного указанным именем и расширением файла и расположенный в указанном подкаталоге пакета.

    Объявление

    Swift

    func pathForResource(_ name: String?, ofType extension: String?, inDirectory subpath: String?) -> String?

    Objective C

    - (NSString *)pathForResource:(NSString *)name ofType:(NSString *)extension inDirectory:(NSString *)subpath

    Параметры

    name

    Имя файла ресурсов.

    extension

    Если extension пустая строка или nil, все файлы в subpath и его подкаталоги возвращаются. Если расширению предоставлены, подкаталоги не ищутся.

    subpath

    Имя подкаталога пакета. Может быть nil.

    Возвращаемое значение

    Массив полных путей для subpath или nil если не расположены никакие файлы.

    Обсуждение

    Если subpath nil, этот метод ищет, верхний уровень нелокализовал каталог ресурса и верхний уровень любых специфичных для языка каталогов. (В OS X обычно вызывают нелокализованный каталог ресурса верхнего уровня Resources но в iOS, это - основной каталог пакета.), Например, предположите, что у Вас есть приложение Mac с современным пакетом, и Вы указываете @"Documentation" для subpath параметр. Этот метод сначала заглянул бы Contents/Resources/Documentation каталог пакета, сопровождаемого Documentation подкаталоги каждого специфичного для языка .lproj каталог.

    Рекурсивно вызывает ли этот метод через подкаталоги, зависит от extension параметр. Если nil или пустая строка, которую это рекурсивно вызовет, иначе, это не делает. (Поисковый порядок на специфичные для языка каталоги соответствует предпочтениям пользователя.) Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает файл URL для ресурса, идентифицированного указанным именем и расширением файла, расположенным в указанном подкаталоге пакета и ограниченным глобальными ресурсами и связанными с указанной локализацией.

    Объявление

    Swift

    func URLForResource(_ name: String, withExtension extension: String?, subdirectory subpath: String?, localization localizationName: String?) -> NSURL?

    Objective C

    - (NSURL *)URLForResource:(NSString *)name withExtension:(NSString *)extension subdirectory:(NSString *)subpath localization:(NSString *)localizationName

    Параметры

    name

    Имя файла ресурсов.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует и файл, URL является первым файлом, с которым встречаются, это точно соответствует name.

    subpath

    Имя подкаталога пакета для поиска.

    localizationName

    Язык ID для локализации. Этот параметр должен соответствовать имени одного из специфичных для языка каталогов ресурса пакета без .lproj расширение.

    Возвращаемое значение

    Файл URL для файла ресурсов или nil если не мог бы быть расположен файл.

    Обсуждение

    Этот метод эквивалентен URLsForResourcesWithExtension:subdirectory:, за исключением того, что только нелокализованные ресурсы и те в специфичном для языка .lproj каталог, указанный localizationName ищутся.

    Должно обычно быть мало причины использовать этот метод — посмотрите Получение Текущего языка и Локали. См. также preferredLocalizationsFromArray:forPreferences: поскольку, как определить, какие локализации доступны.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает полный путь для ресурса, идентифицированного указанным именем и расширением файла, расположенным в указанном подкаталоге пакета и ограниченным глобальными ресурсами и связанными с указанной локализацией.

    Объявление

    Swift

    func pathForResource(_ name: String?, ofType extension: String?, inDirectory subpath: String?, forLocalization localizationName: String?) -> String?

    Objective C

    - (NSString *)pathForResource:(NSString *)name ofType:(NSString *)extension inDirectory:(NSString *)subpath forLocalization:(NSString *)localizationName

    Параметры

    name

    Имя файла ресурсов.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует, и файл является первым файлом, с которым встречаются, это точно соответствует name.

    subpath

    Имя подкаталога пакета для поиска.

    localizationName

    Язык ID для локализации. Этот параметр должен соответствовать имени одного из специфичных для языка каталогов ресурса пакета без .lproj расширение.

    Возвращаемое значение

    Полный путь для файла ресурсов или nil если не мог бы быть расположен файл.

    Обсуждение

    Этот метод эквивалентен pathForResource:ofType:inDirectory:, за исключением того, что только нелокализованные ресурсы и те в специфичном для языка .lproj каталог, указанный localizationName ищутся.

    Должно обычно быть мало причины использовать этот метод — посмотрите Получение Текущего языка и Локали. См. также preferredLocalizationsFromArray:forPreferences: поскольку, как определить, какие локализации доступны.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив, содержащий пути для всех ресурсов пакета, имеющих указанное расширение и находящихся в каталоге пакета в указанном пути.

    Объявление

    Swift

    class func pathsForResourcesOfType(_ extension: String?, inDirectory bundlePath: String) -> [AnyObject]

    Objective C

    + (NSArray *)pathsForResourcesOfType:(NSString *)extension inDirectory:(NSString *)bundlePath

    Параметры

    extension

    Расширение файла. Если extension пустая строка или nil, расширение, как предполагается, не существует, все файлы в bundlePath возвращаются.

    bundlePath

    Каталог верхнего уровня пакета. Это должно представлять допустимый путь.

    Возвращаемое значение

    Массив, содержащий полные пути для всех ресурсов пакета с указанным расширением. Если никакие файлы ресурсов соответствия не найдены, этот метод возвращает пустой массив. Это также возвращает пустой массив если пакет, указанный bundlePath параметр не существует или не является читаемым каталогом.

    Обсуждение

    Этот метод обеспечивает средние значения для того, чтобы динамично обнаружить многократные ресурсы пакета того же типа. Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив, содержащий пути для всех ресурсов пакета, имеющих указанное расширение файла и находящихся в подкаталоге ресурса.

    Объявление

    Swift

    func pathsForResourcesOfType(_ extension: String?, inDirectory subpath: String?) -> [AnyObject]

    Objective C

    - (NSArray *)pathsForResourcesOfType:(NSString *)extension inDirectory:(NSString *)subpath

    Параметры

    extension

    Расширение файла. Если extension пустая строка или nil, расширение, как предполагается, не существует, все файлы в subpath возвращаются.

    subpath

    Имя подкаталога пакета для поиска.

    Возвращаемое значение

    Массив, содержащий полные пути для всех ресурсов пакета, соответствующих указанные критерии. Если никакие файлы ресурсов соответствия не найдены, этот метод возвращает пустой массив.

    Обсуждение

    Этот метод обеспечивает средние значения для того, чтобы динамично обнаружить многократные ресурсы пакета того же типа. Если extension пустая строка или nil, все ресурсы пакета в указанном каталоге ресурса возвращаются.

    Параметр subpath указывает имя определенного подкаталога для поиска в иерархии каталогов ресурса текущего пакета. Если subpath nil, этот метод ищет, верхний уровень нелокализовал каталог ресурса и верхний уровень любых специфичных для языка каталогов. (В OS X обычно вызывают нелокализованный каталог ресурса верхнего уровня Resources но в iOS, это - основной каталог пакета.), Например, предположите, что у Вас есть приложение Mac с современным пакетом, и Вы указываете @"Documentation" для subpath параметр. Этот метод сначала заглянул бы Contents/Resources/Documentation каталог пакета, сопровождаемого Documentation подкаталоги каждого специфичного для языка .lproj каталог. (Поисковый порядок на специфичные для языка каталоги соответствует предпочтениям пользователя.) Этот метод не рекурсивно вызывает ни через какие другие подкаталоги ни в одном из этих расположений. Для получения дополнительной информации о том, как локализованные ресурсы найдены, считайте Образец Поиска Пакета в Руководстве по программированию Пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает массив, содержащий файл URLs для всех ресурсов пакета, имеющих указанное расширение файла, находясь в указанном подкаталоге ресурса, и ограниченный глобальными ресурсами и связанными с указанной локализацией.

    Объявление

    Swift

    func URLsForResourcesWithExtension(_ extension: String?, subdirectory subpath: String?, localization localizationName: String?) -> [AnyObject]?

    Objective C

    - (NSArray *)URLsForResourcesWithExtension:(NSString *)extension subdirectory:(NSString *)subpath localization:(NSString *)localizationName

    Параметры

    extension

    Расширение файла файлов для определения местоположения.

    subpath

    Имя подкаталога пакета для поиска.

    localizationName

    Язык ID для локализации. Этот параметр должен соответствовать имени одного из специфичных для языка каталогов ресурса пакета без .lproj расширение.

    Возвращаемое значение

    Массив, содержащий файл URLs для всех ресурсов пакета, соответствующих указанные критерии. Если никакие файлы ресурсов соответствия не найдены, этот метод возвращает пустой массив.

    Обсуждение

    Этот метод эквивалентен URLsForResourcesWithExtension:subdirectory:, за исключением того, что только нелокализованные ресурсы и те в специфичном для языка .lproj каталог, указанный localizationName ищутся.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает массив, содержащий файл для всех ресурсов пакета, имеющих указанное расширение файла, находясь в указанном подкаталоге ресурса, и ограниченный глобальными ресурсами и связанными с указанной локализацией.

    Объявление

    Swift

    func pathsForResourcesOfType(_ extension: String?, inDirectory subpath: String?, forLocalization localizationName: String?) -> [AnyObject]

    Objective C

    - (NSArray *)pathsForResourcesOfType:(NSString *)extension inDirectory:(NSString *)subpath forLocalization:(NSString *)localizationName

    Параметры

    extension

    Расширение файла файлов для получения.

    subpath

    Имя подкаталога пакета для поиска.

    localizationName

    Язык ID для локализации. Этот параметр должен соответствовать имени одного из специфичных для языка каталогов ресурса пакета без .lproj расширение.

    Возвращаемое значение

    Массив, содержащий полные пути для всех ресурсов пакета, соответствующих указанные критерии. Если никакие файлы ресурсов соответствия не найдены, этот метод возвращает пустой массив.

    Обсуждение

    Этот метод эквивалентен pathsForResourcesOfType:inDirectory:, за исключением того, что только нелокализованные ресурсы и те в специфичном для языка .lproj каталог, указанный localizationName ищутся.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Создает и возвращает файл URL для ресурса с указанным именем и расширением в указанном пакете.

    Объявление

    Swift

    class func URLForResource(_ name: String, withExtension extension: String?, subdirectory subpath: String?, inBundleWithURL bundleURL: NSURL) -> NSURL?

    Objective C

    + (NSURL *)URLForResource:(NSString *)name withExtension:(NSString *)extension subdirectory:(NSString *)subpath inBundleWithURL:(NSURL *)bundleURL

    Параметры

    name

    Имя файла ресурсов.

    extension

    Если extension пустая строка или nil, расширение, как предполагается, не существует и файл, URL является первым файлом, с которым встречаются, это точно соответствует name.

    subpath

    Имя подкаталога пакета для поиска.

    bundleURL

    Файл URL пакета для поиска.

    Возвращаемое значение

    Файл URL для файла ресурсов или nil если не мог бы быть расположен файл.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает массив, содержащий файл URLs для всех ресурсов пакета, имеющих указанное расширение файла, находясь в указанном подкаталоге ресурса, в указанном пакете.

    Объявление

    Swift

    class func URLsForResourcesWithExtension(_ extension: String?, subdirectory subpath: String?, inBundleWithURL bundleURL: NSURL) -> [AnyObject]?

    Objective C

    + (NSArray *)URLsForResourcesWithExtension:(NSString *)extension subdirectory:(NSString *)subpath inBundleWithURL:(NSURL *)bundleURL

    Параметры

    extension

    Расширение файла файлов для определения местоположения.

    subpath

    Имя подкаталога пакета для поиска.

    bundleURL

    Файл URL пакета для поиска.

    Возвращаемое значение

    Массив файла URLs для файлов ресурсов, соответствующих критерии или пустой массив, если не могли бы быть расположены никакие файлы.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • resourcePath resourcePath Свойство

    Полный путь подкаталога пакета, содержащего ресурсы. (только для чтения)

    Объявление

    Swift

    var resourcePath: String? { get }

    Objective C

    @property(readonly, copy) NSString *resourcePath

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    bundlePath

  • Файл URL для получения App Store пакета. (только для чтения)

    Объявление

    Swift

    @NSCopying var appStoreReceiptURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *appStoreReceiptURL

    Обсуждение

    Для приложения, купленного от App Store, используйте это свойство комплекта приложений для определения местоположения получения. Это свойство не делает гарантии о том, существует ли файл в URL — только что, если получение присутствует, который является его расположением.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • bundleURL bundleURL Свойство

    Полный URL каталога пакета получателя. (только для чтения)

    Объявление

    Swift

    @NSCopying var bundleURL: NSURL { get }

    Objective C

    @property(readonly, copy) NSURL *bundleURL

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • bundlePath bundlePath Свойство

    Полный путь каталога пакета получателя. (только для чтения)

    Объявление

    Swift

    var bundlePath: String { get }

    Objective C

    @property(readonly, copy) NSString *bundlePath

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Идентификатор пакета получателя. (только для чтения)

    Объявление

    Swift

    var bundleIdentifier: String? { get }

    Objective C

    @property(readonly, copy) NSString *bundleIdentifier

    Обсуждение

    Идентификатор пакета определяется CFBundleIdentifier введите информационный список свойств пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    infoDictionary

  • infoDictionary infoDictionary Свойство

    Словарь, созданный из пакета Info.plist файл, содержащий информацию о получателе. (только для чтения)

    Объявление

    Swift

    var infoDictionary: [NSObject : AnyObject]? { get }

    Objective C

    @property(readonly, copy) NSDictionary *infoDictionary

    Обсуждение

    Если пакет не содержит Info.plist файл, этот словарь содержит только закрытые ключи, использующиеся внутренне NSBundle класс. NSBundle класс может добавить дополнительные ключи к этому словарю для его собственного использования. Общие ключи для доступа к значениям словаря CFBundleIdentifier, NSMainNibFile, и NSPrincipalClass.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    principalClass
    dictionaryWithContentsOfFile: (NSDictionary)

  • Возвращает значение, связанное с указанным ключом в информационном списке свойств получателя.

    Объявление

    Swift

    func objectForInfoDictionaryKey(_ key: String) -> AnyObject?

    Objective C

    - (id)objectForInfoDictionaryKey:(NSString *)key

    Параметры

    key

    Ключ в списке свойств получателя.

    Возвращаемое значение

    Значение связалось с key в списке свойств получателя (Info.plist). Локализованное значение ключа возвращается, когда каждый доступен.

    Обсуждение

    Использование этого метода предпочтено по другим методам доступа, потому что это возвращает локализованное значение ключа, когда каждый доступен.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Файл URL подкаталога получателя, содержащего плагины. (только для чтения)

    Объявление

    Swift

    @NSCopying var builtInPlugInsURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *builtInPlugInsURL

    Обсуждение

    Это - надлежащий путь для современного приложения и пакетов платформы. Это может не быть URL для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Полный путь подкаталога получателя, содержащего плагины. (только для чтения)

    Объявление

    Swift

    var builtInPlugInsPath: String? { get }

    Objective C

    @property(readonly, copy) NSString *builtInPlugInsPath

    Обсуждение

    Это - надлежащий путь для современного приложения и пакетов платформы. Это может не быть путем для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • executableURL executableURL Свойство

    Файл URL исполняемого файла получателя. (только для чтения)

    Объявление

    Swift

    @NSCopying var executableURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *executableURL

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • executablePath executablePath Свойство

    Полный путь исполняемого файла получателя. (только для чтения)

    Объявление

    Swift

    var executablePath: String? { get }

    Objective C

    @property(readonly, copy) NSString *executablePath

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает файл URL исполнимой программы с указанным именем в пакете получателя.

    Объявление

    Swift

    func URLForAuxiliaryExecutable(_ executableName: String) -> NSURL?

    Objective C

    - (NSURL *)URLForAuxiliaryExecutable:(NSString *)executableName

    Параметры

    executableName

    Имя исполняемого файла.

    Возвращаемое значение

    Файл URL исполнимой программы executableName в пакете получателя.

    Обсуждение

    Этот метод возвращает надлежащий путь для современного приложения и пакетов платформы. Этот метод может не возвратить URL для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает полный путь исполнимой программы с указанным именем в пакете получателя.

    Объявление

    Swift

    func pathForAuxiliaryExecutable(_ executableName: String) -> String?

    Objective C

    - (NSString *)pathForAuxiliaryExecutable:(NSString *)executableName

    Параметры

    executableName

    Имя исполняемого файла.

    Возвращаемое значение

    Полный путь исполнимой программы executableName в пакете получателя.

    Обсуждение

    Этот метод возвращает надлежащий путь для современного приложения и пакетов платформы. Этот метод может не возвратить путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Файл URL подкаталога пакета, содержащего частные платформы. (только для чтения)

    Объявление

    Swift

    @NSCopying var privateFrameworksURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *privateFrameworksURL

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Этим свойством может не быть URL для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Полный путь подкаталога пакета, содержащего частные платформы. (только для чтения)

    Объявление

    Swift

    var privateFrameworksPath: String? { get }

    Objective C

    @property(readonly, copy) NSString *privateFrameworksPath

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Файл URL подкаталога получателя, содержащего, совместно использовал платформы. (только для чтения)

    Объявление

    Swift

    @NSCopying var sharedFrameworksURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *sharedFrameworksURL

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать URL для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Полный путь подкаталога пакета, содержащего, совместно использовал платформы. (только для чтения)

    Объявление

    Swift

    var sharedFrameworksPath: String? { get }

    Objective C

    @property(readonly, copy) NSString *sharedFrameworksPath

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Файл URL подкаталога пакета, содержащего, совместно использовал файлы поддержки. (только для чтения)

    Объявление

    Swift

    @NSCopying var sharedSupportURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *sharedSupportURL

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Полный путь подкаталога пакета, содержащего, совместно использовал файлы поддержки. (только для чтения)

    Объявление

    Swift

    var sharedSupportPath: String? { get }

    Objective C

    @property(readonly, copy) NSString *sharedSupportPath

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • resourceURL resourceURL Свойство

    Файл URL подкаталога пакета, содержащего файлы ресурсов. (только для чтения)

    Объявление

    Swift

    @NSCopying var resourceURL: NSURL? { get }

    Objective C

    @property(readonly, copy) NSURL *resourceURL

    Обсуждение

    Это свойство содержит надлежащий путь для современного приложения и пакетов платформы. Это свойство может не содержать путь для нестандартных форматов пакета или для некоторых более старых форматов пакета.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Возвращает локализованную версию строки, определяемой указанным ключом и нахождением в указанной таблице.

    Объявление

    Swift

    func localizedStringForKey(_ key: String, value value: String?, table tableName: String?) -> String

    Objective C

    - (NSString *)localizedStringForKey:(NSString *)key value:(NSString *)value table:(NSString *)tableName

    Параметры

    key

    Ключ для строки в таблице, идентифицированной tableName.

    value

    Значение, чтобы возвратиться, если key nil или если локализованная строка для key не может быть найден в таблице.

    tableName

    Таблица строк получателя для поиска. Если tableName nil или пустая строка, метод пытается использовать таблицу в Localizable.strings.

    Возвращаемое значение

    Локализованная версия строки, определяемой key в таблице tableName. Когда ключ, этот метод возвращает следующий nil или не найденный в таблице:

    • Если key nil и value nil, возвращает пустую строку.

    • Если key nil и value не -nil, значение возвратов.

    • Если key не найден и value nil или пустая строка, возвраты key.

    • Если key не найден и value не -nil и не пустой, возвратиться value.

    Обсуждение

    Для получения дополнительной информации о строковой локализации и спецификации a .strings файл, см. «Строковые ресурсы».

    Используя пользовательское значение по умолчанию NSShowNonLocalizedStrings, можно изменить поведение localizedStringForKey:value:table: зарегистрировать сообщение, когда метод не может найти локализованную строку. Если Вы устанавливаете это значение по умолчанию в YEStrue (в глобальном домене или в домене приложения), тогда когда метод не может найти локализованную строку в таблице, он регистрирует сообщение к консоли и капитализирует key прежде, чем возвратить его.

    Следующие циклы в качестве примера через статический массив ключей, когда кнопка нажата, получают значение для каждого ключа из названной строковой таблицы Buttons.strings, и устанавливает заголовок кнопки с возвращенным значением:

    • - (void)changeTitle:(id)sender
    • {
    • static int keyIndex = 0;
    • NSBundle *thisBundle = [NSBundle bundleForClass:[self class]];
    • NSString *locString = [thisBundle
    • localizedStringForKey:assortedKeys[keyIndex++]
    • value:@"No translation" table:@"Buttons"];
    • [sender setTitle:locString];
    • if (keyIndex == MAXSTRINGS) keyIndex=0;
    • }

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Массив чисел, указывающих типы архитектуры, поддерживается исполнимой программой пакета. (только для чтения)

    Объявление

    Swift

    var executableArchitectures: [AnyObject]? { get }

    Objective C

    @property(readonly, copy) NSArray *executableArchitectures

    Обсуждение

    Массив NSNumber объекты, каждый из которых содержит целочисленное значение, соответствующее поддерживаемой архитектуре процессора. Для списка типов общей архитектуры посмотрите константы в Мужественной Архитектуре. Если пакет не содержит Мужественную исполнимую программу, это nil.

    Пакет сканирует свою Мужественную исполнимую программу и возвращает все типы архитектуры, которые он находит. Поскольку они взяты непосредственно от исполнимой программы, значения могут не всегда соответствовать одному из известных типов ЦП, определенных в Мужественной Архитектуре.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает булево значение, указывающее, мог ли бы исполняемый код пакета быть загружен успешно.

    Объявление

    Swift

    func preflightAndReturnError(_ error: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)preflightAndReturnError:(NSError **)error

    Параметры

    error

    На вводе, указателе на ошибочную переменную объекта. На выводе эта переменная может содержать ошибочный объект указание, почему не могла быть загружена исполнимая программа пакета. Если никакая ошибка не произошла бы, этот параметр оставляют неизмененным. Можно указать nil для этого параметра, если Вы не интересуетесь информацией об ошибке.

    Возвращаемое значение

    YEStrue если исполняемый код пакета мог бы быть загружен успешно или уже загружается; иначе, NOfalse если не мог бы быть загружен код.

    Обсуждение

    Этот метод фактически не загружает исполняемый код пакета. Вместо этого это выполняет несколько проверок, чтобы видеть, мог ли бы код быть загружен, и за одним исключением возвращает те же ошибки, которые произошли бы во время работы действующей нагрузки. Одно исключение NSExecutableLinkError ошибка, требующая, чтобы фактическая загрузка кода проверила ошибки ссылки.

    Для списка возможных ошибок загрузки посмотрите обсуждение для loadAndReturnError: метод.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – loadAndReturnError:

  • Если код не был уже загружен, динамично загружает исполняемый код пакета в рабочую программу.

    Объявление

    Swift

    func load() -> Bool

    Objective C

    - (BOOL)load

    Возвращаемое значение

    YEStrue если код был уже загружен, иначе, если метод успешно загружает код пакета или NOfalse.

    Обсуждение

    Можно использовать этот метод для загрузки кода, связанного с динамично загруженным пакетом, таким как плагин или платформа. До версии 10.5 OS X пакет попытался бы загрузить свой код — если бы это имело кого-либо — только один раз. После того, как загруженный, Вы не могли разгрузить тот код. В версии 10.5 OS X и позже, можно разгрузить исполняемый код пакета с помощью unload метод.

    Вы не должны загружать исполняемый код пакета для поиска ресурсов пакета.

    Этот метод инициализирует основной класс в пакете. Поэтому для добавления кода Вы хотите выполняемый после загрузки, переопределяете initialize метод класса основного класса.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Загружает исполняемый код пакета и возвращает любые ошибки.

    Объявление

    Swift

    func loadAndReturnError(_ error: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)loadAndReturnError:(NSError **)error

    Параметры

    error

    На вводе, указателе на ошибочную переменную объекта. На выводе эта переменная может содержать ошибочный объект указание, почему не могла быть загружена исполнимая программа пакета. Если никакая ошибка не произошла, этот параметр оставляют неизмененным. Можно указать nil для этого параметра, если Вы не интересуетесь информацией об ошибке.

    Возвращаемое значение

    YEStrue если исполняемый код пакета был загружен успешно или был уже загружен; иначе, NOfalse если не мог бы быть загружен код.

    Обсуждение

    Если возвращается этот метод NOfalse и Вы передаете значение для error параметр, подходящий ошибочный объект возвращается в том параметре. Потенциальные ошибки возвратились, находятся в ошибочном домене Какао и включают следующие типы. Для полного списка ошибочных типов посмотрите FoundationErrors.h.

    • NSFileNoSuchFileError - возвращенный, если не был расположен исполняемый файл пакета.

    • NSExecutableNotLoadableError - возвращенный, если исполняемый файл пакета существует, но не мог бы быть загружен. Если исполнимая программа не распознана как загружаемая исполнимая программа, эта ошибка возвращается. Это может также быть возвращено, если исполнимая программа является исполнимой программой PEF/CFM, но текущий процесс не поддерживает тот тип исполнимой программы.

    • NSExecutableArchitectureMismatchError - возвращенный, если исполнимая программа пакета не включает код, соответствующий архитектуру процессора текущего процессора.

    • NSExecutableRuntimeMismatchError - возвращенный, если запрошенная информация о выполнении Objective C пакета не совместима со временем выполнения текущего процесса.

    • NSExecutableLoadError - возвращенный, если исполнимой программе пакета не удалось загрузиться по некоторой обнаруживаемой причине до соединения. Эта ошибка могла бы произойти, если пакет зависит от платформы или библиотеки, отсутствующей или если требуемая платформа или библиотека не совместимы с текущей архитектурой или версией среды выполнения.

    • NSExecutableLinkError - возвращенный, если исполнимая программа не удалась загрузиться вследствие ошибок ссылки, но иначе в порядке.

    Ошибочный объект может содержать дополнительную отладочную информацию в своем описании, которое можно использовать для идентификации причины ошибки. (Эта отладочная информация не должна быть выведена на экран пользователю.) Можно получить отладочную информацию путем вызова ошибочного объекта description метод в Вашем коде или при помощи print-object команда на ошибке возражает в gdb.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

  • Состояние загрузки пакета.

    Объявление

    Swift

    var loaded: Bool { get }

    Objective C

    @property(readonly, getter=isLoaded) BOOL loaded

    Обсуждение

    YEStrue если код пакета в настоящее время загружается, иначе NOfalse.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.10 и позже.

    См. также

    – загрузка

  • Разгружает код, связанный с получателем.

    Объявление

    Swift

    func unload() -> Bool

    Objective C

    - (BOOL)unload

    Возвращаемое значение

    YEStrue если пакет был успешно разгружен или не был уже загружен; иначе, NOfalse если не мог бы быть разгружен пакет.

    Обсуждение

    Этот метод пытается разгрузить исполняемый код пакета с помощью базового динамического загрузчика (обычно dyld). Можно использовать этот метод для разгрузки плагина и пакетов платформы, когда Вам больше не нужен код, они содержат. Необходимо использовать этот метод для разгрузки пакетов, загруженных с помощью методов NSBundle класс только. Не используйте этот метод для разгрузки пакетов, первоначально загруженных с помощью функций манипулирования пакета в Базовой Основе.

    Это - ответственность вызывающей стороны гарантировать, чтобы никакие объекты в памяти или структуры данных не относились к разгружаемому коду. Например, если у Вас есть объект, класс которого определяется в пакете, необходимо выпустить тот объект до разгрузки пакета. Точно так же Ваш код не должен пытаться получить доступ к любым символам, определенным в разгруженном пакете.

    Специальные замечания

    До версии 10.5 OS X код не мог быть разгружен когда-то загруженный, и этот метод будет всегда возвращаться NOfalse. В версии 10.5 OS X и позже, можно разгрузить исполняемый код пакета с помощью этого метода.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвраты одна или более локализаций из указанного списка, который объект пакета использовал бы для определения местоположения ресурсов для текущего пользователя.

    Объявление

    Swift

    class func preferredLocalizationsFromArray(_ localizationsArray: [AnyObject]) -> [AnyObject]

    Objective C

    + (NSArray *)preferredLocalizationsFromArray:(NSArray *)localizationsArray

    Параметры

    localizationsArray

    Массив NSString объекты, каждый из которых указывает язык ID для локализации, которую поддерживает пакет.

    Возвращаемое значение

    Массив NSString объекты, содержащие предпочтительные локализации. Эти строки упорядочиваются в массиве согласно предпочтениям языка пользователя и взяты от строк в localizationsArray параметр.

    Обсуждение

    Этот метод не возвращает все локализации в предпочтительном порядке, но только тех от который NSBundle получил бы локализованное содержание, обычно или сингл не область определенная локализация или специфичная для области локализация, сопровождаемая соответствием не область определенная локализация как нейтрализация.

    Однако клиенты, хотящие все локализации в предпочтительном порядке, могут выполнить повторенные вызовы, каждый раз, вынимая главные локализации из списка локализаций передал в.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Возвращает локализации, которые объект пакета предпочел бы учитывая указанный пакет и предпочтения языка пользователя.

    Объявление

    Swift

    class func preferredLocalizationsFromArray(_ localizationsArray: [AnyObject], forPreferences preferencesArray: [AnyObject]?) -> [AnyObject]

    Objective C

    + (NSArray *)preferredLocalizationsFromArray:(NSArray *)localizationsArray forPreferences:(NSArray *)preferencesArray

    Параметры

    localizationsArray

    Массив NSString объекты, каждый из которых указывает язык ID для локализации, которую поддерживает пакет.

    preferencesArray

    Массив NSString объекты, содержащие предпочтительные локализации пользователя. Если этот параметр nil, метод использует предпочтения локализации пользователя.

    Возвращаемое значение

    Массив NSString объекты, каждый из которых идентифицирует локализацию в пакете получателя. Эти строки упорядочиваются в массиве согласно указанным предпочтениям и взяты от строк в localizationsArray параметр. Если ни одна из предпочтенных пользователями локализаций не доступна в пакете, этот метод возвращает одну из локализаций пакета.

    Обсуждение

    Этот метод не возвращает все локализации в предпочтительном порядке, но только тех от который NSBundle получил бы локализованное содержание, обычно или сингл не область определенная локализация или специфичная для области локализация, сопровождаемая соответствием не область определенная локализация как нейтрализация.

    Однако клиенты, хотящие все локализации в предпочтительном порядке, могут выполнить повторенные вызовы, каждый раз, вынимая главные локализации из списка локализаций передал в.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Упорядоченный список предпочтительных локализаций содержится в пакете. (только для чтения)

    Объявление

    Swift

    var preferredLocalizations: [AnyObject] { get }

    Objective C

    @property(readonly, copy) NSArray *preferredLocalizations

    Обсуждение

    Массив NSString объекты, содержащие язык IDs для локализаций в пакете. Строки упорядочиваются согласно предпочтениям языка пользователя и доступным локализациям.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Локализация для языка разработки. (только для чтения)

    Объявление

    Swift

    var developmentLocalization: String? { get }

    Objective C

    @property(readonly, copy) NSString *developmentLocalization

    Обсуждение

    Это свойство соответствует значению в CFBundleDevelopmentRegion ключ списка свойств пакета (Info.plist).

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Список всех локализаций содержится в пакете. (только для чтения)

    Объявление

    Swift

    var localizations: [AnyObject]? { get }

    Objective C

    @property(readonly, copy) NSArray *localizations

    Обсуждение

    Массив NSString объекты, содержащие язык IDs для всех локализаций, содержатся в пакете.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Словарь с ключами от локализованного списка свойств пакета. (только для чтения)

    Объявление

    Swift

    var localizedInfoDictionary: [NSObject : AnyObject]? { get }

    Objective C

    @property(readonly, copy) NSDictionary *localizedInfoDictionary

    Обсуждение

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

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Эти константы описывают типы ЦП, которые может поддерживать исполняемый код пакета.

    Объявление

    Swift

    var NSBundleExecutableArchitectureI386: Int { get } var NSBundleExecutableArchitecturePPC: Int { get } var NSBundleExecutableArchitectureX86_64: Int { get } var NSBundleExecutableArchitecturePPC64: Int { get }

    Objective C

    enum { NSBundleExecutableArchitectureI386 = 0x00000007, NSBundleExecutableArchitecturePPC = 0x00000012, NSBundleExecutableArchitectureX86_64 = 0x01000007, NSBundleExecutableArchitecturePPC64 = 0x01000012 };

    Константы

    • NSBundleExecutableArchitectureI386

      NSBundleExecutableArchitectureI386

      Указывает 32-разрядную архитектуру Intel.

      Доступный в OS X v10.5 и позже.

    • NSBundleExecutableArchitecturePPC

      NSBundleExecutableArchitecturePPC

      Указывает 32-разрядную архитектуру PowerPC.

      Доступный в OS X v10.5 и позже.

    • NSBundleExecutableArchitectureX86_64

      NSBundleExecutableArchitectureX86_64

      Указывает 64-разрядную архитектуру Intel.

      Доступный в OS X v10.5 и позже.

    • NSBundleExecutableArchitecturePPC64

      NSBundleExecutableArchitecturePPC64

      Указывает 64-разрядную архитектуру PowerPC.

      Доступный в OS X v10.5 и позже.

  • Эта константа предоставлена в userInfo словарь NSBundleDidLoadNotification уведомление.

    Объявление

    Swift

    let NSLoadedClasses: NSString!

    Objective C

    NSString * const NSLoadedClasses;

    Константы

    • NSLoadedClasses

      NSLoadedClasses

      NSArray объект, содержащий имена (как NSString объекты) каждого загруженного класса

      Доступный в OS X v10.0 и позже.

  • NSBundle сообщения NSBundleDidLoadNotification уведомлять наблюдателей, какие классы и категории были динамично загружены. Когда запрос выполнен к NSBundle объект для класса (classNamed: или principalClass), пакет динамично загружает файл исполняемого кода, содержащий реализацию класса и все другие определения классов, содержавшиеся в файле. После того, как модуль загружается, пакет отправляет NSBundleDidLoadNotification.

    Объект уведомления NSBundle экземпляр, динамично загружающий классы. userInfo словарь содержит NSLoadedClasses ключ.

    В типичном использовании этого уведомления объект мог бы хотеть перечислить userInfo выстройте, чтобы проверить, соответствовал ли каждый загруженный класс определенному протоколу (скажите, протокол для комплекта инструментальных средств Plug and Play); если бы класс действительно соответствует, объект создал бы экземпляр того класса и добавил бы экземпляр к другому NSArray объект.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.