Flutter中颜色值、透明度的处理

196

Color类原生方法

Color.fromRGBO(r, g, b, opacity)

Color.fromRGBO(55, 1, 200, 1)
// opacity:  透明度 0~1 

Color.fromARGB(a, r, g, b)

Color.fromARGB(255, 55, 1, 200)
// a:  alpha值,0是透明的,255是完全不透明的

0xff处理16进制

Color(0xFFb74093)
Color(0xffb74093)

Colors

Colors.blue

自定义类

创建一个HexColor

class HexColor extends Color {
  static int _getColorFromHex(String hexColor) {
    hexColor = hexColor.toUpperCase().replaceAll("#", "");
    if (hexColor.length == 6) {
      hexColor = "FF" + hexColor;
    }
    return int.parse(hexColor, radix: 16);
  }

  HexColor(final String hexColor) : super(_getColorFromHex(hexColor));
}

传入16进制字符串颜色值

HexColor("#b74093")

Opacity透明度组件

const Opacity({
  Key key,
  @required this.opacity, // 透明度opacity >= 0.0 && opacity <= 1.0
  this.alwaysIncludeSemantics = false,
  Widget child,
})

关注公众号: 页面仔小杨 【实战干货、原创分享】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值