Spacing class

A ThemeExtension that exposes the design system's spacing scale.

Provides 16 named spacing steps — spacing_1 (2 dp) through spacing_16 (72 dp) — registered in ThemeData.extensions for both light and dark themes.

Access via ThemeData using the ThemeExtras extension:

Padding(
  padding: EdgeInsets.all(context.theme.spacing_4),
  child: child,
)

Do not instantiate this class directly in widget code. Always read it through Theme.of(context) (or context.theme) so that theme overrides and lerp animations are respected.

Inheritance

Constructors

Spacing({double spacing_1 = 2, double spacing_2 = 4, double spacing_3 = 6, double spacing_4 = 8, double spacing_5 = 10, double spacing_6 = 12, double spacing_7 = 14, double spacing_8 = 16, double spacing_9 = 20, double spacing_10 = 24, double spacing_11 = 32, double spacing_12 = 40, double spacing_13 = 48, double spacing_14 = 56, double spacing_15 = 64, double spacing_16 = 72})
Creates a spacing scale with the given step values, in logical pixels.
const

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
spacing_1 double
2 logical pixels.
final
spacing_10 double
24 logical pixels.
final
spacing_11 double
32 logical pixels.
final
spacing_12 double
40 logical pixels.
final
spacing_13 double
48 logical pixels.
final
spacing_14 double
56 logical pixels.
final
spacing_15 double
64 logical pixels.
final
spacing_16 double
72 logical pixels.
final
spacing_2 double
4 logical pixels.
final
spacing_3 double
6 logical pixels.
final
spacing_4 double
8 logical pixels.
final
spacing_5 double
10 logical pixels.
final
spacing_6 double
12 logical pixels.
final
spacing_7 double
14 logical pixels.
final
spacing_8 double
16 logical pixels.
final
spacing_9 double
20 logical pixels.
final
type Object
The extension's type.
no setterinherited

Methods

copyWith({double? spacing_1, double? spacing_2, double? spacing_3, double? spacing_4, double? spacing_5, double? spacing_6, double? spacing_7, double? spacing_8, double? spacing_9, double? spacing_10, double? spacing_11, double? spacing_12, double? spacing_13, double? spacing_14, double? spacing_15, double? spacing_16}) Spacing
Creates a copy of this spacing scale with the given steps replaced.
override
lerp(covariant ThemeExtension<Spacing>? other, double t) Spacing
Linearly interpolates between this scale and other by factor t.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited