NSProgress
NSProgress класс обеспечивает автономный механизм для создания отчетов прогресса. Это упрощает для кода, выполняющего работу, чтобы сообщить, что прогресс той работы, и для кода пользовательского интерфейса замечает что прогресс для представления пользователю. В частности это может использоваться, чтобы показать пользователю индикатор выполнения и объяснительный текст, оба обновленные должным образом, поскольку сделаны успехи. Это также позволяет работе быть отмененной или приостановленной пользователем.
Создание отчетов о прогрессе
Используя методы этого класса, Ваш код может сообщить об успехах, которые это в настоящее время делает к выполнению некоторой задачи, включая прогресс связанных подзадач. Можно создать экземпляры этого класса с помощью initWithParent:userInfo: метод экземпляра или progressWithTotalUnitCount: метод класса.
Объекты прогресса имеют много свойств, которые можно использовать, чтобы наблюдать и сообщить о текущем прогрессе. Например, totalUnitCount свойство представляет общее количество единиц работы, которые должны быть выполнены, и completedUnitCount и fractionCompleted свойства представляют, сколько из той работы было уже завершено. fractionCompleted свойство полезно для обновления индикаторов хода выполнения или текстовых дескрипторов; чтобы проверить, завершен ли прогресс, необходимо протестировать это completedUnitCount >= totalUnitCount (принятие, конечно, это totalUnitCount > 0).
Следующее перечисление показывает выборочный метод, сообщающий о прогрессе выполнения некоторой работы на части данных. Когда объект прогресса сначала создается, значение totalUnitCount свойство установлено в некоторый подходящий объем партии для этой работы, и completedUnitCount количество 0. Каждый раз цикл выполняется, и пакет данных обрабатывается, объект прогресса totalUnitCount свойство постепенно увеличивается соответственно.
- (void)startTaskWithData:(NSData *)data {NSUInteger batchSize = ... use a suitable batch sizeNSProgress *progress = [NSProgress progressWithTotalUnitCount:batchSize];for (NSUInteger index = 0; index < batchSize; index++) {// Check for cancellationif ([progress isCancelled]) {// Tidy up as necessary...break;}// Do something with this batch of data...// Report progress (add 1 because we've completed the work for the current index).[progress setCompletedUnitCount:(index + 1)];}}
Каждое из свойств объекта прогресса, включая totalUnitCount, completedUnitCount, и fractionCompleted, поддерживайте Наблюдение Значения ключа. Когда значения изменяются, это делает его чрезвычайно простым для представления или объекта контроллера окна наблюдать свойства и обновить элементы UI, такие как индикаторы хода выполнения. Это также означает, что существует ненулевая стоимость для обновления значений этих свойств, таким образом, необходимо избегать использования количества модуля, которое слишком гранулировано — если Вы выполняете итерации по большому набору данных, например, и каждая работа занимает только тривиальное количество времени, необходимо разделить работу на пакеты, таким образом, можно обновить количество модуля один раз на пакет, а не один раз на итерацию.
Создание дерева объектов прогресса
Часто, Ваш код, возможно, должен сообщить о полном прогрессе работы, составленной из нескольких подопераций. Для выполнения этого код может сообщить о прогрессе каждой подработы путем роста дерева объектов прогресса.
NSProgress создание отчетов о механизме поддерживает слабо связанное отношение между объектами прогресса. Подоперации ничего не должны знать о родительском элементе прогресса — можно просто создать новые объекты прогресса и, если другой NSProgress экземпляр уже существует и отмечен как являющийся текущим для текущего потока, новые объекты будут установлены как дочерние элементы того экземпляра. Когда дочерние элементы завершаются, родитель completedUnitCount свойство автоматически увеличено предопределенной суммой.
Как пример, полагайте отслеживание прогресса кода загружающие и копирующие файлы на диске. Вы могли использовать единственный объект прогресса отследить всю задачу, но проще управлять каждой подзадачей с помощью отдельного объекта прогресса. Вы запускаете путем создания полного родительского объекта прогресса с подходящим общим количеством модуля, затем вызываете becomeCurrentWithPendingUnitCount:, тогда создайте свои объекты прогресса подзадачи перед окончательным вызовом resignCurrent.
Незаконченное количество модуля, которое Вы указываете в первом методе, разделено одинаково между дочерними объектами прогресса, которые что Вы создаете между этими двумя вызовами метода. Каждый дочерний объект прогресса поддерживает свое собственное внутреннее количество модуля, но когда он завершает свои модули (т.е. дочерний объект completedUnitCount == totalUnitCount), родительский объект прогресса completedUnitCount увеличен присвоенной частью исходного незаконченного количества модуля.
В следующем примере полный родительский прогресс имеет 100 модулей; эти два дочерних объекта поэтому получают 50 незаконченных модулей каждый и отслеживают внутренне 10 единиц работы каждого. Когда каждый дочерний элемент завершает его 10 модулей, завершенное количество модуля родителя увеличено на 50.
- (void)startLongOperation {self.overallProgress = [NSProgress progressWithTotalUnitCount:100];[self.overallProgress becomeCurrentWithPendingUnitCount:50];[self work1];[self.overallProgress resignCurrent];[self.overallProgress becomeCurrentWithPendingUnitCount:50];[self work2];[self.overallProgress resignCurrent];}- (void)work1 {NSProgress *firstTaskProgress = [NSProgress progressWithTotalUnitCount:10];// Perform first task...}- (void)work2 {NSProgress *secondTaskProgress = [NSProgress progressWithTotalUnitCount:10];// Perform second task...}
Если Вы не создаете дочерних объектов прогресса между вызовами к becomeCurrentWithPendingUnitCount: и resignCurrent, «родительский» прогресс автоматически обновляет completedUnitCount путем добавления незаконченных модулей.
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.9 и позже.
-
init (parent:userInfo:) - initWithParent:userInfo:Определяемый инициализаторИнициализирует недавно выделенный
NSProgressэкземпляр.Объявление
Swift
init(parentparentProgressOrNil: NSProgress?, userInfouserInfoOrNil: [NSObject : AnyObject]?)Objective C
- (instancetype)initWithParent:(NSProgress *)parentProgressOrNiluserInfo:(NSDictionary *)userInfoOrNilПараметры
parentProgressOrNilРодитель
NSProgressобъект, если таковые имеются, чтобы уведомить при создании отчетов о прогрессе или консультироваться при проверке на отмену.Единственные допустимые значения
[NSProgress currentProgress]илиnil.userInfoOrNilСловарь информации о пользователе для объекта прогресса. Может быть
nil.Обсуждение
Это - определяемый инициализатор для
NSProgressкласс.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Создает и возвращается
NSProgressэкземпляр, инициализированное использованиеinitWithParent:userInfo:.Объявление
Swift
init(totalUnitCountunitCount: Int64) -> NSProgressObjective C
+ (NSProgress *)progressWithTotalUnitCount:(int64_t)unitCountПараметры
unitCountОбщее количество единиц работы, которые будут выполнены.
Обсуждение
Если существует один, и значение, инициализатор передается текущий объект прогресса
totalUnitCountсвойство установлено.Во многих случаях можно просто предшествовать коду, делающему значительное количество работы с вызовом этого метода, тогда неоднократно устанавливайте
completedUnitCountилиcancelledсвойство в цикле, выполняющем работу.Можно вызвать этот метод на один поток и затем передать возвращенный
NSProgressна другом потоке. Например, можно получить создаваемый экземпляр прогресса в блоке, которому Вы передаетеdispatch_async(3) Mac OS X Developer Tools Manual Page. В том блоке можно вызвать методы какbecomeCurrentWithPendingUnitCount:илиresignCurrent, и наборcompletedUnitCountилиcancelledсвойства как работа выполняются.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Возвраты
NSProgressэкземпляр, если таковые имеются, связался с текущим потоком предыдущим вызовомbecomeCurrentWithPendingUnitCount:.Объявление
Swift
class func currentProgress() -> NSProgress?Objective C
+ (NSProgress *)currentProgressВозвращаемое значение
NSProgressэкземпляр связался с текущим потоком, если таковые имеются.Обсуждение
Используйте это на поток
currentProgressзначение для разрешения кода, выполняющего работу для создания отчетов о полезном прогрессе, даже когда это широко разделяется от кода, фактически представляющего информацию о прогрессе пользователю, не требуя, чтобы уровни прошедшего кода раздалиNSProgressэкземпляр.При создании отчетов о прогрессе Вы обычно работаете с дочерним объектом прогресса, создаваемым путем вызова
progressWithTotalUnitCount:, гарантировать, чтобы Вы сообщили о прогрессе известных единиц работы.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Устанавливает получатель как текущий объект прогресса текущего потока и указывает часть работы, которая будет выполняться следующим дочерним объектом прогресса получателя.
Объявление
Swift
func becomeCurrentWithPendingUnitCount(_unitCount: Int64)Objective C
- (void)becomeCurrentWithPendingUnitCount:(int64_t)unitCountПараметры
unitCountЧисло единиц работы, которые будут выполнены следующим объектом прогресса, инициализирующимся путем вызова
initWithParent:userInfo:метод в текущем потоке с набором получателя как родитель. Это число представляет часть работы, которая будет выполняться в связи с общим количеством единиц работы, которые будут выполняться получателем (представленный значением получателяtotalUnitCountсвойство). Единицы работы, представленные этим параметром, должны быть теми же единицами работы, использующимися в получателеtotalUnitCountсвойство.Обсуждение
Используйте этот метод для создания дерева объектов прогресса, как описано в Создании Дерева Объектов Прогресса.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Сбалансируйте новый предыдущий вызов
becomeCurrentWithPendingUnitCount:на том же потоке путем восстановления текущего прогресса возражают против того, чем это было преждеbecomeCurrentWithPendingUnitCount:был вызван.Объявление
Swift
func resignCurrent()Objective C
- (void)resignCurrentОбсуждение
Используйте этот метод после создания Вашего дерева объектов прогресса, как описано в Создании Дерева Объектов Прогресса.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
totalUnitCount totalUnitCountСвойствоОбщее количество единиц работы прослежено для текущего прогресса.
Объявление
Swift
var totalUnitCount: Int64Objective C
@property int64_t totalUnitCountОбсуждение
Для
NSProgressсо своего родаNSProgressKindFile, модуль этого свойства является байтами в то время какNSProgressFileTotalCountKeyиNSProgressFileCompletedCountKeyключиuserInfoсловарь используется для полного количества файлов.Для любого другого отчасти
NSProgress, единица измерения не имеет значения, пока это является непротиворечивым. О значениях можно сообщить пользователю вlocalizedDescriptionиlocalizedAdditionalDescription.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
completedUnitCount completedUnitCountСвойствоЧисло уже завершенных единиц работы для текущего задания.
Объявление
Swift
var completedUnitCount: Int64Objective C
@property int64_t completedUnitCountОбсуждение
Для
NSProgressсо своего родаNSProgressKindFile, модуль этого свойства является байтами в то время какNSProgressFileTotalCountKeyиNSProgressFileCompletedCountKeyключиuserInfoсловарь используется для полного количества файлов.Для любого другого отчасти
NSProgress, единица измерения не имеет значения, пока это является непротиворечивым. О значениях можно сообщить пользователю вlocalizedDescriptionиlocalizedAdditionalDescription.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
localizedDescription localizedDescriptionСвойствоЛокализованное описание прогресса прослежено получателем.
Объявление
Swift
var localizedDescription: StringObjective C
@property(copy) NSString *localizedDescriptionОбсуждение
Если Вы не указываете свое собственное значение для этого свойства,
NSProgressиспользует значениеkindсвойство, чтобы определить, как использовать значения других свойств, а также значения в пользовательском информационном словаре, для возврата автоматически вычисленной строки. Если этому не удается сделать это, это возвращает пустую строку.localizedDescriptionпредставляет общее описание работы, прослеженной получателем. В зависимости от вида прогресса, завершенных и общих количеств модуля и других параметров, пример локализовал описания, включайте:Копирование 10 файлов …
30% завершились
Копирование «TextEdit» …
По умолчанию,
NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
Более определенное локализованное описание прогресса прослежено получателем.
Объявление
Swift
var localizedAdditionalDescription: StringObjective C
@property(copy) NSString *localizedAdditionalDescriptionОбсуждение
Если Вы не указываете свое собственное значение для этого свойства,
NSProgressиспользует значениеkindсвойство, чтобы определить, как использовать значения других свойств, а также значения в пользовательском информационном словаре, для возврата автоматически вычисленной строки. Если этому не удается сделать это, это возвращает пустую строку.localizedAdditionalDescriptionявляется более определенным, чемlocalizedDescriptionо работе получатель отслеживает в любой определенный момент. В зависимости от вида прогресса, завершенных и общих количеств модуля и других параметров, пример локализовал дополнительные описания, включайте:3 из 10 файлов
123 КБ 789,1 МБ
3.3 MB минут на 103,92 ГБ - 2, оставаясь
1,61 ГБ минут (на 2 кБайт/с) - 2 на 3,22 ГБ, оставаясь
1 минута, оставаясь (1 кБайт/с)
По умолчанию,
NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
fractionCompleted fractionCompletedСвойствоЧасть полной работы, завершенной этим объектом прогресса, включая работу, выполненную любыми дочерними элементами, это может иметь. (только для чтения)
Объявление
Swift
var fractionCompleted: Double { get }Objective C
@property(readonly) double fractionCompletedОбсуждение
Если объект получателя не имеет никаких дочерних элементов,
fractionCompletedобычно результат деленияcompletedUnitCounttotalUnitCount.Если получатель действительно имеет дочерние элементы,
fractionCompletedотразит успехи, сделанные в дочерних объектах в дополнение к его собственномуcompletedUnitCount. Когда дочерние элементы заканчивают,completedUnitCountиз родителя обновляется.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Указывает, отслеживает ли получатель работу, которая может быть отменена.
Объявление
Swift
var cancellable: BoolObjective C
@property(getter=isCancellable) BOOL cancellableОбсуждение
По умолчанию,
NSProgressобъекты являются отменимыми.Вы обычно используете это свойство, чтобы связаться, должны ли средства управления для отмены появиться в пользовательском интерфейсе создания отчетов прогресса.
NSProgressсамостоятельно не делает, что-либо с этим свойством кроме справки передает значение от генераторов отчетов прогресса для развития наблюдателей.Если
NSProgressявляется отменимым, необходимо реализовать возможность отменить прогресс любой путем установки блока дляcancellationHandlerсвойство, или путем опросаcancelledсвойство периодически при выполнении соответствующей работы.Это допустимо для значения этого свойства для изменения во время времени жизни
NSProgressобъект. По умолчанию,NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
отмененный отмененныйСвойствоУказывает, отслеживает ли получатель отмененную работу. (только для чтения)
Объявление
Swift
var cancelled: Bool { get }Objective C
@property(readonly, getter=isCancelled) BOOL cancelledОбсуждение
По умолчанию,
NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Если получатель будет иметь родителя, уже отмененного, то получатель также сообщит о том, чтобы быть отмененным.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Отслеживание прогресса отмены.
Объявление
Swift
func cancel()Objective C
- (void)cancelОбсуждение
Этот метод вызывает блочный набор для
cancellationHandler, если существует один и гарантирует что какие-либо последующие чтенияcancelledвозврат свойстваYEStrue.Если получатель будет иметь какие-либо дочерние элементы, то те дочерние элементы будут также отменены.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
cancellationHandler cancellationHandlerСвойствоБлок для вызова, когда отменяется прогресс.
Объявление
Swift
var cancellationHandler: (() -> Void)?Objective C
@property(copy) void (^cancellationHandler)(void)Обсуждение
Если получатель является дочерним элементом другого объекта прогресса,
cancellationHandlerкогда родитель будет отменен, блок будет вызван.Специальные замечания
Обработчик отмены может быть вызван на любую очередь. Если необходимо выполнить работу на определенной очереди, необходимо диспетчеризировать той очереди из блока обработчика отмены.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Указывает, отслеживает ли получатель работу, которая может быть приостановлена.
Объявление
Swift
var pausable: BoolObjective C
@property(getter=isPausable) BOOL pausableОбсуждение
По умолчанию,
NSProgressобъекты не pausable.Вы обычно используете это свойство, чтобы связаться, должны ли средства управления для приостановки появиться в пользовательском интерфейсе создания отчетов прогресса.
NSProgressсамостоятельно не делает, что-либо с этим свойством кроме справки передает значение от генераторов отчетов прогресса для развития наблюдателей.Если
NSProgresspausable, необходимо реализовать возможность приостановить любого путем установки блока дляpausingHandlerсвойство, или путем опросаpausedсвойство периодически при выполнении соответствующей работы.Это допустимо для значения этого свойства для изменения во время времени жизни
NSProgressобъект. По умолчанию,NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
приостановленный приостановленныйСвойствоУказывает, отслеживает ли получатель приостановленную работу. (только для чтения)
Объявление
Swift
var paused: Bool { get }Objective C
@property(readonly, getter=isPaused) BOOL pausedОбсуждение
По умолчанию,
NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Если получатель будет иметь родителя, уже приостановленного, то получатель также сообщит о том, чтобы быть приостановленным.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Отслеживание прогресса паузы.
Объявление
Swift
func pause()Objective C
- (void)pauseОбсуждение
Этот метод вызывает блочный набор для
pausingHandler, если существует один и гарантирует что какие-либо последующие чтенияpausedвозврат свойстваYEStrue.Если получатель будет иметь какие-либо дочерние элементы, то те дочерние элементы будут также приостановлены.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
pausingHandler pausingHandlerСвойствоБлок для вызова, когда приостанавливается прогресс.
Объявление
Swift
var pausingHandler: (() -> Void)?Objective C
@property(copy) void (^pausingHandler)(void)Обсуждение
Если получатель является дочерним элементом другого объекта прогресса,
pausingHandlerкогда родитель будет приостановлен, блок будет вызван.Специальные замечания
Приостанавливающийся обработчик может быть вызван на любую очередь. Если необходимо выполнить работу на определенной очереди, необходимо диспетчеризировать той очереди из приостанавливающегося блока обработчика.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
неопределенный неопределенныйСвойствоУказывает, неопределенен ли отслеженный прогресс. (только для чтения)
Объявление
Swift
var indeterminate: Bool { get }Objective C
@property(readonly, getter=isIndeterminate) BOOL indeterminateОбсуждение
Прогресс неопределенен когда значение также
totalUnitCountилиcompletedUnitCountменьше, чем нуль.Установка обоих
totalUnitCountиcompletedUnitCountсвойства для обнуления указывают, что нет никакого прогресса для отслеживания; в этом случае,isIndeterminateвозвратыNOfalseиfractionCompletedвозвраты1.0.По умолчанию,
NSProgressKVO-совместимо для этого свойства, отправляя уведомления на том же потоке, обновляющем свойство.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Строка, идентифицирующая вид сделанных успехов.
Обсуждение
Это свойство идентифицирует вид сделанных успехов, такой как
NSProgressKindFile. Это может бытьnil.Если значение
localizedDescriptionсвойство не было ранее установлено в ненулевое значение, значение по умолчаниюlocalizedDescriptionметод get использует вид прогресса, чтобы определить, как использовать значения других свойств, а также значения в пользовательском информационном словаре, для создания строки, которая презентабельна пользователю.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
См. также
-
Установите значение в
userInfoсловарь.Объявление
Swift
func setUserInfoObject(_objectOrNil: AnyObject?, forKeykey: String)Objective C
- (void)setUserInfoObject:(id)objectOrNilforKey:(NSString *)keyПараметры
objectOrNilОбъект установить для данного ключа, или
nilудалить существующую запись в словаре.keyКлюч для использования, чтобы хранить данный объект.
Обсуждение
Используйте этот метод для установки значения в
userInfoсловарь, с надлежащим уведомлением KVO для свойств, значения которых могут зависеть от значений в пользовательском информационном словаре, какlocalizedDescription.Предоставьте значение
nilудалить существующую словарную статью для данного ключа.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Словарь произвольных значений связался с получателем. (только для чтения)
Объявление
Swift
var userInfo: [NSObject : AnyObject]? { get }Objective C
@property(readonly, copy) NSDictionary *userInfoОбсуждение
KVO-совместимый словарь, изменяющийся в ответ на
setUserInfoObject:forKey:. Словарь отправляет все свои уведомления KVO на потоке, обновляющем свойство.Некоторые записи имеют значения, распознанные
NSProgressсам класс — видит Общие пользовательские информационные ключи словаря прогресса, виды Прогресса, информационные ключи словаря пользователя системы эксплуатации Файла и виды операции File.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.9 и позже.
-
Набор оценивает за эти ключи в пользовательском информационном словаре для влияния на автоматически сгенерированный
localizedAdditionalDescriptionстрока.Объявление
Objective C
NSString *const NSProgressEstimatedTimeRemainingKey; NSString *const NSProgressThroughputKey;Константы
-
NSProgressEstimatedTimeRemainingKeyNSProgressEstimatedTimeRemainingKeyСоответствующее значение
NSNumberэкземпляр, представляющий время, оставаясь, в секундах.Доступный в OS X v10.9 и позже.
-
NSProgressThroughputKeyNSProgressThroughputKeyСоответствующее значение
NSNumberэкземпляр, указывающий скорость обработки данных, в байтах в секунду.Доступный в OS X v10.9 и позже.
-
-
При работе с файлами, набор эта строка для
kindиз прогресса.Константы
-
NSProgressKindFileNSProgressKindFileЗначение для
kindсвойство, указывающее, что прогресс отслеживает работу файла. Если Вы устанавливаете это значение для прогрессаkind, необходимо установить значение в пользовательском информационном словаре дляNSProgressFileOperationKindKey.NSProgressиз этого вида, как предполагается, использует байты в качестве единицы работы, сделанной, и реализация по умолчаниюlocalizedDescriptionиспользует в своих интересах это для возврата более определенного текста, чем он мог иначе.NSProgressFileTotalCountKeyиNSProgressFileCompletedCountKeyключиuserInfoсловарь используется для полного количества файлов.Доступный в OS X v10.9 и позже.
-
-
Набор оценивает за эти ключи в пользовательском информационном словаре для предоставления большей информации об операциях файла для автоматически сгенерированного
localizedDescriptionиlocalizedAdditionalDescriptionстроки.Объявление
Swift
let NSProgressFileOperationKindKey: NSString! let NSProgressFileTotalCountKey: NSString! let NSProgressFileCompletedCountKey: NSString!Objective C
NSString *const NSProgressFileOperationKindKey; NSString *const NSProgressFileTotalCountKey; NSString *const NSProgressFileCompletedCountKey;Константы
-
NSProgressFileOperationKindKeyNSProgressFileOperationKindKeyЗначение требуется для этого ключа в пользовательском информационном словаре когда прогресс
kindустановлен вNSProgressKindFile. Соответствующее значение должно быть одной из записей, перечисленных в“File operation kinds”.Доступный в OS X v10.9 и позже.
-
NSProgressFileTotalCountKeyNSProgressFileTotalCountKeyСоответствующее значение должно быть
NSNumberсодержа целое число для представления общего количества затронутых файлов. Эта запись является дополнительной; если Вы устанавливаете значение для этого ключа, автоматически сгенерированногоlocalizedAdditionalDescriptionстрока использует его.Доступный в OS X v10.9 и позже.
-
NSProgressFileCompletedCountKeyNSProgressFileCompletedCountKeyСоответствующее значение должно быть
NSNumberсодержа целое число для представления числа завершенных файлов. Эта запись является дополнительной; если Вы устанавливаете значение для этого ключа, автоматически сгенерированногоlocalizedAdditionalDescriptionстрока использует его.Доступный в OS X v10.9 и позже.
-
-
При отслеживании операций файла с прогрессом
kindнабор кNSProgressKindFile, необходимо обеспечить значение дляNSProgressFileOperationKindKeyв пользовательском информационном словаре. Существует четыре возможных значения.Объявление
Swift
let NSProgressFileOperationKindDownloading: NSString! let NSProgressFileOperationKindDecompressingAfterDownloading: NSString! let NSProgressFileOperationKindReceiving: NSString! let NSProgressFileOperationKindCopying: NSString!Objective C
NSString *const NSProgressFileOperationKindDownloading; NSString *const NSProgressFileOperationKindDecompressingAfterDownloading; NSString *const NSProgressFileOperationKindReceiving; NSString *const NSProgressFileOperationKindCopying;Константы
-
NSProgressFileOperationKindDownloadingNSProgressFileOperationKindDownloadingПрогресс отслеживает работу загрузки файла.
Доступный в OS X v10.9 и позже.
-
NSProgressFileOperationKindDecompressingAfterDownloadingNSProgressFileOperationKindDecompressingAfterDownloadingПрогресс отслеживает распаковку файла после загрузки.
Доступный в OS X v10.9 и позже.
-
NSProgressFileOperationKindReceivingNSProgressFileOperationKindReceivingПрогресс отслеживает получение файла из другого источника.
Доступный в OS X v10.9 и позже.
-
NSProgressFileOperationKindCopyingNSProgressFileOperationKindCopyingПрогресс отслеживает копирование файла от источника до места назначения.
Доступный в OS X v10.9 и позже.
-
