Flutter TextButton 和 OutlinedBut

2023-03-07  本文已影响0人  贝勒老爷
style: ButtonStyle(
 textStyle: MaterialStateProperty.all(
            TextStyle(fontSize: 18, color: Colors.red)),
        //设置按钮上字体与图标的颜色
    ///设置文本不通状态时颜色
  foregroundColor: MaterialStateProperty.resolveWith(
        (states) {
      if (states.contains(MaterialState.focused) &&
          !states.contains(MaterialState.pressed)) {
        //获取焦点时的颜色
        return Colors.blue;
      } else if (states.contains(MaterialState.pressed)) {
        //按下时的颜色
        return Colors.deepPurple;
      }
      //默认状态使用灰色
      return Colors.grey;
    },
  ),
  //按钮背景颜色
  backgroundColor: MaterialStateProperty.resolveWith((states) {
    //设置按下时的背景颜色
    if (states.contains(MaterialState.pressed)) {
      return Colors.yellow[300];
    }
    //默认不使用背景颜色
    return null;
  }),
  ///设置水波纹颜色
  overlayColor: MaterialStateProperty.all(Colors.yellow),
  ///按钮大小
  minimumSize: MaterialStateProperty.all(Size(320, 36)),
 //设置阴影  不适用于这里的TextButton
elevation: MaterialStateProperty.all(0),
 //设置按钮内边距
padding: MaterialStateProperty.all(EdgeInsets.all(10)),
  ///设置按钮圆角
  shape: MaterialStateProperty.all(RoundedRectangleBorder(
      borderRadius: BorderRadius.circular(5))),
  ///设置按钮边框颜色和宽度                
  side: MaterialStateProperty.all(
      BorderSide(color: ColorStyle.color_4A6081, width: 1)),
),
上一篇 下一篇

猜你喜欢

热点阅读