getButtonStyle method

ButtonStyle getButtonStyle({
  1. Color? foregroundColor,
  2. Color? backgroundColor,
  3. CustomButtonSize? size,
})

获取按钮样式

Implementation

ButtonStyle getButtonStyle({Color? foregroundColor, Color? backgroundColor, CustomButtonSize? size}) {
  double? customFontSize;
  EdgeInsets? customPadding;
  switch (size) {
    case CustomButtonSize.small:
      customFontSize = 14;
      customPadding = const EdgeInsets.symmetric();
      break;
    case CustomButtonSize.medium:
      customFontSize = 16;
      customPadding = null;
      break;
    case CustomButtonSize.large:
      customFontSize = 18;
      customPadding = const EdgeInsets.symmetric(horizontal: 28);
      break;
    default:
      customFontSize = 16;
      customPadding = null;
      break;
  }
  return ButtonStyle(
    textStyle: WidgetStatePropertyAll(TextStyle(fontSize: customFontSize)),
    padding: WidgetStatePropertyAll(padding ?? customPadding),
    foregroundColor: WidgetStatePropertyAll(foregroundColor),
    backgroundColor: WidgetStatePropertyAll(backgroundColor),
  );
}