FormeRatingBarIndicator constructor
FormeRatingBarIndicator({
- Key? key,
- String? name,
- double initialValue = 0,
- FormeAsyncValidator<
double> ? asyncValidator, - Duration? asyncValidatorDebounce,
- AutovalidateMode? autovalidateMode,
- FormeFieldDecorator<
double> ? decorator, - bool enabled = true,
- FocusNode? focusNode,
- FormeFieldInitialized<
double> ? onInitialized, - FormeFieldSetter<
double> ? onSaved, - FormeFieldStatusChanged<
double> ? onStatusChanged, - int? order,
- bool quietlyValidate = false,
- bool readOnly = false,
- bool requestFocusOnUserInteraction = true,
- FormeFieldValidationFilter<
double> ? validationFilter, - FormeValidator<
double> ? validator, - Widget itemBuilder(
- double value,
- BuildContext context,
- int index
- TextDirection? textDirection,
- Color? unratedColor,
- Axis direction = Axis.horizontal,
- int itemCount = 5,
- EdgeInsets itemPadding = EdgeInsets.zero,
- double itemSize = 40,
- ScrollPhysics physics = const NeverScrollableScrollPhysics(),
Implementation
FormeRatingBarIndicator({
super.key,
super.name,
super.initialValue = 0,
super.asyncValidator,
super.asyncValidatorDebounce,
super.autovalidateMode,
super.decorator,
super.enabled = true,
super.focusNode,
super.onInitialized,
super.onSaved,
super.onStatusChanged,
super.order,
super.quietlyValidate = false,
super.readOnly = false,
super.requestFocusOnUserInteraction = true,
super.validationFilter,
super.validator,
this.itemBuilder,
this.textDirection,
this.unratedColor,
this.direction = Axis.horizontal,
this.itemCount = 5,
this.itemPadding = EdgeInsets.zero,
this.itemSize = 40,
this.physics = const NeverScrollableScrollPhysics(),
}) : super.allFields(
builder: (state) {
final IndexedWidgetBuilder builder = itemBuilder == null
? (context, _) => const Icon(
Icons.star,
color: Colors.amber,
)
: (context, _) {
return itemBuilder(state.value, context, _);
};
return RatingBarIndicator(
itemBuilder: builder,
textDirection: textDirection,
unratedColor: unratedColor,
direction: direction,
itemCount: itemCount,
itemPadding: itemPadding,
itemSize: itemSize,
physics: physics,
rating: state.value,
);
},
);