XText class
A customizable text widget that supports an optional leading icon, underline decoration, tap handling, width limitation, and overflow control.
Features:
- text: The main string displayed.
- icon: Optional widget shown before the text (e.g., Icon, Svg, etc.).
- style: Custom text styling. Any existing
decorationwill be removed to avoid conflict with the manual underline. - isUseUnderline: If true, draws a bottom border manually to simulate an underline without affecting text metrics.
- iconVerticalAlignment: Controls vertical alignment inside the Row.
- onTap: Tap callback using GestureDetector.
- maxWidth: Constrains the text to a maximum width.
- overflow: Controls the text overflow behavior (e.g., ellipsis).
Usage:
XText(
"Hello World",
icon: Icon(Icons.info),
style: TextStyle(fontSize: 14),
isUseUnderline: true,
onTap: () {},
maxWidth: 150,
overflow: TextOverflow.ellipsis,
)
- Inheritance
Constructors
- XText(String text, {Key? key, Widget? icon, bool isExpand = false, TextStyle? style, CrossAxisAlignment? iconVerticalAlignment, bool? isUseUnderline = false, dynamic onTap()?, double? maxWidth, TextOverflow? overflow, TextAlign textAlign = .start, double? iconSpacer = 8, StrutStyle? strutStyle, TextDirection? textDirection, Locale? locale, bool? softWrap = true, int? maxLines, TextScaler? textScaler, String? semanticsLabel, String? semanticsIdentifier, TextWidthBasis? textWidthBasis, TextHeightBehavior? textHeightBehavior, Color? selectionColor, GestureTapCallback? onDoubleTap, GestureLongPressCallback? onLongPress, GestureTapDownCallback? onTapDown, GestureTapUpCallback? onTapUp, GestureTapCancelCallback? onTapCancel, HitTestBehavior? behavior, bool excludeFromSemantics = false, DragStartBehavior dragStartBehavior = DragStartBehavior.start})
-
const
Properties
- behavior → HitTestBehavior?
-
final
- dragStartBehavior → DragStartBehavior
-
final
- excludeFromSemantics → bool
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- icon → Widget?
-
final
- iconSpacer → double?
-
final
- iconVerticalAlignment → CrossAxisAlignment?
-
final
- isExpand → bool
-
final
- isUseUnderline → bool?
-
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- locale → Locale?
-
final
- maxLines → int?
-
final
- maxWidth → double?
-
final
- onDoubleTap → GestureTapCallback?
-
final
- onLongPress → GestureLongPressCallback?
-
final
- onTap → dynamic Function()?
-
final
- onTapCancel → GestureTapCancelCallback?
-
final
- onTapDown → GestureTapDownCallback?
-
final
- onTapUp → GestureTapUpCallback?
-
final
- overflow → TextOverflow?
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selectionColor → Color?
-
final
- semanticsIdentifier → String?
-
final
- semanticsLabel → String?
-
final
- softWrap → bool?
-
final
- strutStyle → StrutStyle?
-
final
- style → TextStyle?
-
final
- text → String
-
final
- textAlign → TextAlign
-
final
- textDirection → TextDirection?
-
final
- textHeightBehavior → TextHeightBehavior?
-
final
- textScaler → TextScaler?
-
final
- textWidthBasis → TextWidthBasis?
-
final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement to manage this widget's location in the tree.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited