MaterialStateBorderSide class Null safety
Defines a BorderSide whose value depends on a set of MaterialStates which represent the interactive state of a component.
To use a MaterialStateBorderSide, you should create a subclass of a
MaterialStateBorderSide and override the abstract resolve
method.
This class enables existing widget implementations with BorderSide
properties to be extended to also effectively support MaterialStateProperty<BorderSide>
property values. MaterialStateBorderSide should only be used with widgets that document
their support, like ActionChip.side.
This example defines a subclass of MaterialStateBorderSide, that resolves
to a red border side when its widget is selected.
To create a local project with this code sample, run:
flutter create --sample=material.MaterialStateBorderSide.1 mysample
flutter create --sample=material.MaterialStateBorderSide.1 mysample
This class should only be used for parameters which are documented to take MaterialStateBorderSide, otherwise only the default state will be used.
- Inheritance
-
- Object
- BorderSide
- MaterialStateBorderSide
- Implemented types
Constructors
- MaterialStateBorderSide()
-
Abstract const constructor. This constructor enables subclasses to provide
const constructors so that they can be used in const expressions.
const
Properties
- color → Color
-
The color of this side of the border.
finalinherited
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
- strokeAlign → StrokeAlign
-
The direction of where the border will be drawn relative to the container.
finalinherited
- style → BorderStyle
-
The style of this side of the border.
finalinherited
- width → double
-
The width of this side of the border, in logical pixels.
finalinherited
Methods
-
copyWith(
{Color? color, double? width, BorderStyle? style}) → BorderSide -
Creates a copy of this border but with the given fields replaced with the new values.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited
-
resolve(
Set< MaterialState> states) → BorderSide? -
Returns a BorderSide that's to be used when a Material component is
in the specified state. Return null to defer to the default value of the
widget or theme.
override
-
scale(
double t) → BorderSide -
Creates a copy of this border side description but with the width scaled
by the factor
t
.inherited -
toPaint(
) → Paint -
Create a Paint object that, if used to stroke a line, will draw the line
in this border's style.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
resolveWith(
MaterialPropertyResolver< BorderSide?> callback) → MaterialStateBorderSide -
Creates a MaterialStateBorderSide from a
MaterialPropertyResolver<BorderSide?> callback function.
override