<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSProgressIndicator",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(cs)NSProgressIndicator"
  },
  "title" : "NSProgressIndicator"
}
-->

# NSProgressIndicator

An interface that provides visual feedback to the user about the status of an ongoing task.

```
class NSProgressIndicator
```

## Overview

Progress indicators can be determinate or indeterminate. A determinate indicator displays the completion percentage of a task. An indeterminate indicator shows that the app is busy without providing a visual indication of how long the task will take.

## Topics

### Animating the progress indicator

[`startAnimation(_:)`](/documentation/AppKit/NSProgressIndicator/startAnimation(_:))

Starts the animation of an indeterminate progress indicator.

[`stopAnimation(_:)`](/documentation/AppKit/NSProgressIndicator/stopAnimation(_:))

Stops the animation of an indeterminate progress indicator.

[`usesThreadedAnimation`](/documentation/AppKit/NSProgressIndicator/usesThreadedAnimation)

A Boolean that indicates whether the progress indicator implements animation in a separate thread.

[`animate:`](/documentation/AppKit/NSProgressIndicator/animate:)

This action method advances the progress animation of an indeterminate progress animator by one step.

[`animationDelay`](/documentation/AppKit/NSProgressIndicator/animationDelay)

Returns the delay, in seconds, between animation steps for an indeterminate progress indicator.

[`setAnimationDelay:`](/documentation/AppKit/NSProgressIndicator/setAnimationDelay:)

Sets the delay, in seconds, between animation steps for an indeterminate progress indicator.

### Advancing the progress bar

[`increment(by:)`](/documentation/AppKit/NSProgressIndicator/increment(by:))

Advances the progress bar of a determinate progress indicator by the specified amount.

[`doubleValue`](/documentation/AppKit/NSProgressIndicator/doubleValue)

The value that indicates the current extent of the progress indicator.

[`minValue`](/documentation/AppKit/NSProgressIndicator/minValue)

The minimum value for the progress indicator.

[`maxValue`](/documentation/AppKit/NSProgressIndicator/maxValue)

The maximum value for the progress indicator.

### Observing the progress bar

[`observedProgress`](/documentation/AppKit/NSProgressIndicator/observedProgress)

The progress object to use for updating the progress view.

### Setting the appearance

[`controlSize`](/documentation/AppKit/NSProgressIndicator/controlSize)

The size of the progress indicator.

[`controlTint`](/documentation/AppKit/NSProgressIndicator/controlTint)

The progress indicator’s control tint.

[`isBezeled`](/documentation/AppKit/NSProgressIndicator/isBezeled)

A Boolean that indicates whether the progress indicator’s frame has a three-dimensional bezel.

[`isIndeterminate`](/documentation/AppKit/NSProgressIndicator/isIndeterminate)

A Boolean that indicates whether the progress indicator is indeterminate.

[`style`](/documentation/AppKit/NSProgressIndicator/style-swift.property)

The style of the progress indicator (bar or spinning).

[`sizeToFit()`](/documentation/AppKit/NSProgressIndicator/sizeToFit())

This action method resizes the progress indicator to an appropriate size depending on the value of [`style`](/documentation/AppKit/NSProgressIndicator/style-swift.property).

[`isDisplayedWhenStopped`](/documentation/AppKit/NSProgressIndicator/isDisplayedWhenStopped)

A Boolean that indicates whether the progress indicator hides itself when it isn’t animating.

### Constants

[`NSProgressIndicatorThickness`](/documentation/AppKit/NSProgressIndicatorThickness)

Specify the height of a progress indicator.

[`NSProgressIndicator.Style`](/documentation/AppKit/NSProgressIndicator/Style-swift.enum)

Constants that specify the progress indicator’s style.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)