Flutter 支持使用 LinearGradient、RadialGradient 和 SweepGradient 类实现背景渐变色。
Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.centerLeft,
end: Alignment.centerRight,
colors: [
Colors.blue,
Colors.red,
],
),
),
child: Center(
child: Text(
'Hello, world!',
style: TextStyle(
color: Colors.white,
fontSize: 24,
),
),
),
)
在上述代码中,LinearGradient 类接受三个参数:
begin:渐变的起始点,例如 Alignment.centerLeft 表示从左侧开始渐变。
end:渐变的结束点,例如 Alignment.centerRight 表示渐变到右侧结束。
colors:渐变过程中的颜色数组。
我们将这个渐变色应用到一个 Container 的 decoration 中作为背景,并在其内部添加一个居中的 Text 组件进行展示。此时,文本颜色为白色,因为我们将其设置为 TextStyle(color: Colors.white)。
如果要实现其他类型的渐变色,只需要将 LinearGradient 替换为 RadialGradient 或 SweepGradient,并相应地调整其参数即可。