如何在 Flutter 中为文本或图像创建固定的渐变不透明度?

问题描述 投票:0回答:1

寻求有关在 Flutter 中实现文本固定梯度不透明度的指导。目标是建立一个恒定的渐变,平滑地过渡到透明,没有任何运动或动画。任何展示如何实现这一目标的建议或代码片段都将受到高度重视。谢谢!

我还没有找到太多关于这个主题的信息!

flutter text gradient fade
1个回答
0
投票

您可以使用 LinearGradient。正如您所看到的,背景颜色从第一个指定的颜色过渡到最后一个指定的颜色。另请注意,对应于 alpha 值(00 = 透明)的前两个字母会减小,从而生成所需渐变的结果。

代码是来自 https://api.flutter.dev/flutter/painting/LinearGradient-class.html

的稍微调整版本
class MoodyGradient extends StatelessWidget {
  const MoodyGradient({super.key});

  @override
  Widget build(BuildContext context) {
    return Material(
      child: Container(
        decoration: const BoxDecoration(
          gradient: LinearGradient(
            begin: Alignment.topLeft,
            end: Alignment(0.8, 1),
            colors: <Color>[
              Color(0xff1f005c),
              Color(0xcc5b0060),
              Color(0xaa870160),
              Color(0x88ac255e),
              Color(0x66ca485c),
              Color(0x44e16b5c),
              Color(0x22f39060),
              Color(0x00ffb56b),
            ], // Gradient from https://learnui.design/tools/gradient-generator.html
            tileMode: TileMode.mirror,
          ),
        ),
        child: const Center(
          child: Text(
            'From Night to Day',
            style: TextStyle(fontSize: 24),
          ),
        ),
      ),
    );
  }
}

© www.soinside.com 2019 - 2024. All rights reserved.