---
title: GaugeStyle
framework: swiftui
role: symbol
role_heading: Protocol
path: swiftui/gaugestyle
---

# GaugeStyle

Defines the implementation of all gauge instances within a view hierarchy.

## Declaration

```swift
@MainActor @preconcurrency protocol GaugeStyle
```

## Overview

Overview To configure the style for all the Gauge instances in a view hierarchy, use the gaugeStyle(_:) modifier. For example, you can configure a gauge to use the circular style: Gauge(value: batteryLevel, in: 0...100) {     Text("Battery Level") } .gaugeStyle(.circular) A type conforming to this protocol inherits @preconcurrency @MainActor isolation from the protocol if the conformance is included in the type’s base declaration: struct MyCustomType: Transition {     // `@preconcurrency @MainActor` isolation by default } Isolation to the main actor is the default, but it’s not required. Declare the conformance in an extension to opt out of main actor isolation: extension MyCustomType: Transition {     // `nonisolated` by default }

## Topics

### Getting the automatic style

- [automatic](swiftui/gaugestyle/automatic.md)

### Getting circular gauge styles

- [circular](swiftui/gaugestyle/circular.md)
- [accessoryCircular](swiftui/gaugestyle/accessorycircular.md)
- [accessoryCircularCapacity](swiftui/gaugestyle/accessorycircularcapacity.md)

### Getting linear gauge styles

- [linear](swiftui/gaugestyle/linear.md)
- [linearCapacity](swiftui/gaugestyle/linearcapacity.md)
- [accessoryLinear](swiftui/gaugestyle/accessorylinear.md)
- [accessoryLinearCapacity](swiftui/gaugestyle/accessorylinearcapacity.md)

### Creating custom gauge styles

- [makeBody(configuration:)](swiftui/gaugestyle/makebody(configuration:).md)
- [GaugeStyle.Configuration](swiftui/gaugestyle/configuration.md)
- [Body](swiftui/gaugestyle/body.md)

### Supporting types

- [DefaultGaugeStyle](swiftui/defaultgaugestyle.md)
- [CircularGaugeStyle](swiftui/circulargaugestyle.md)
- [AccessoryCircularGaugeStyle](swiftui/accessorycirculargaugestyle.md)
- [AccessoryCircularCapacityGaugeStyle](swiftui/accessorycircularcapacitygaugestyle.md)
- [LinearGaugeStyle](swiftui/lineargaugestyle.md)
- [LinearCapacityGaugeStyle](swiftui/linearcapacitygaugestyle.md)
- [AccessoryLinearGaugeStyle](swiftui/accessorylineargaugestyle.md)
- [AccessoryLinearCapacityGaugeStyle](swiftui/accessorylinearcapacitygaugestyle.md)

## Relationships

### Conforming Types

- [AccessoryCircularCapacityGaugeStyle](swiftui/accessorycircularcapacitygaugestyle.md)
- [AccessoryCircularGaugeStyle](swiftui/accessorycirculargaugestyle.md)
- [AccessoryLinearCapacityGaugeStyle](swiftui/accessorylinearcapacitygaugestyle.md)
- [AccessoryLinearGaugeStyle](swiftui/accessorylineargaugestyle.md)
- [CircularGaugeStyle](swiftui/circulargaugestyle.md)
- [DefaultGaugeStyle](swiftui/defaultgaugestyle.md)
- [LinearCapacityGaugeStyle](swiftui/linearcapacitygaugestyle.md)
- [LinearGaugeStyle](swiftui/lineargaugestyle.md)

## See Also

### Styling indicators

- [gaugeStyle(_:)](swiftui/view/gaugestyle(_:).md)
- [GaugeStyleConfiguration](swiftui/gaugestyleconfiguration.md)
- [progressViewStyle(_:)](swiftui/view/progressviewstyle(_:).md)
- [ProgressViewStyle](swiftui/progressviewstyle.md)
- [ProgressViewStyleConfiguration](swiftui/progressviewstyleconfiguration.md)
