ZeroButtonGroup.labelsWithIcons constructor
const
ZeroButtonGroup.labelsWithIcons({
- Key? key,
- required List<
String> ? labels, - required List<
IconData> ? icons, - required List<
bool> selecteds, - ButtonGroupType buttonGroupType = ButtonGroupType.filled,
- ZeroSizeType buttonSizeType = ZeroSizeType.medium,
- bool? vertical = false,
- bool? multipleSelect = false,
- ZeroButtonRadiusType buttonRadiusType = ZeroButtonRadiusType.curved,
- ZeroButtonGroupStyle? style,
- ZeroButtonGroupCallback? onChanged,
ButtonGroup having items with both labels and icons alike
Implementation
const ZeroButtonGroup.labelsWithIcons({
super.key,
required this.labels,
required this.icons,
required this.selecteds,
this.buttonGroupType = ButtonGroupType.filled,
this.buttonSizeType = ZeroSizeType.medium,
this.vertical = false,
this.multipleSelect = false,
this.buttonRadiusType = ZeroButtonRadiusType.curved,
this.style,
this.onChanged,
}) : buttonItemType = ButtonItemType.labelsAndIcons,
square = null,
selectIcon = null,
withIcon = true,
assert(icons != null && icons.length >= 2,
'Labels or icons must contain at least 2 elements'),
assert(
icons != null &&
labels != null &&
icons.length == labels.length &&
icons.length == selecteds.length,
'selectedItems must contain the same number of elements as icons\'s and label\'s',
);