ZeroButtonGroup.labelsOnly constructor

const ZeroButtonGroup.labelsOnly({
  1. Key? key,
  2. required List<String>? labels,
  3. required List<bool> selecteds,
  4. IconData? selectIcon,
  5. bool withIcon = false,
  6. ButtonGroupType buttonGroupType = ButtonGroupType.filled,
  7. ZeroSizeType buttonSizeType = ZeroSizeType.medium,
  8. bool? vertical = false,
  9. bool? multipleSelect = false,
  10. ZeroButtonRadiusType buttonRadiusType = ZeroButtonRadiusType.curved,
  11. ZeroButtonGroupStyle? style,
  12. ZeroButtonGroupCallback? onChanged,
})

ButtonGroup having only items with labels

Implementation

const ZeroButtonGroup.labelsOnly({
  super.key,
  required this.labels,
  required this.selecteds,
  this.selectIcon,
  this.withIcon = false,
  this.buttonGroupType = ButtonGroupType.filled,
  this.buttonSizeType = ZeroSizeType.medium,
  this.vertical = false,
  this.multipleSelect = false,
  this.buttonRadiusType = ZeroButtonRadiusType.curved,
  this.style,
  this.onChanged,
})  : buttonItemType = ButtonItemType.labelsOnly,
      icons = null,
      square = null,
      assert(labels != null && labels.length >= 2,
          'Labels should contain at least 2 elements'),
      assert(labels != null && labels.length == selecteds.length,
          'selectedItems must contain the same number of elements as label\'s'),
      assert(withIcon == true ? selectIcon != null : true,
          'Having withIcon true requires you to provide selectIcon');