flutter - 如何在不使用任何插件的情况下添加 2 个音调图标?

标签 flutter icons material-design

我不想只为我的应用程序中的一个图标添加任何插件,但我需要两种色调,因为背景颜色会变化,我不知道什么时候会变暗,什么时候会变亮。

我的意思是像这样的图标 - https://material.io/tools/icons/?style=twotone其中图标具有不同颜色的边框。

最佳答案

如果我正确理解了您的问题,这里是两个色调 IconText 的示例。

您可以根据需要调整颜色、半径和其他参数。

body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            ShaderMask(
              blendMode: BlendMode.srcATop,
              shaderCallback: (Rect bounds) {
                return RadialGradient(
                  center: Alignment.topLeft,
                  radius: 1.0,
                  colors: <Color>[Colors.red, Colors.cyanAccent],
                  tileMode: TileMode.mirror,
                ).createShader(bounds);
              },
              child: Text(
                'Two Tone Color Icon & Text!',
                style: TextStyle(fontSize: 22.0),
              ),
            ),
            SizedBox(
              height: 10.0,
            ),
            ShaderMask(
              blendMode: BlendMode.srcATop,
              shaderCallback: (Rect bounds) {
                return RadialGradient(
                  center: Alignment.center,
                  radius: 1.0,
                  colors: <Color>[
                    Colors.greenAccent[200],
                    Colors.blueAccent[200]
                  ],
                  tileMode: TileMode.repeated,
                ).createShader(bounds);
              },
              child: Icon(
                Icons.dashboard,
                size: 32.0,
              ),
            ),
          ],
        ),
      ),

输出: enter image description here

关于flutter - 如何在不使用任何插件的情况下添加 2 个音调图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54087139/

相关文章:

flutter - 如何在 Flutter 移动应用程序中将 Azure AD 用户登录到 Firebase?

android - 机器人的名字 :drawable bookmark/favorites icon

android - 如何在我的 Android 应用程序中使用系统图标?

javascript - Angular 5 : Prevent to reload tab content when changing between tabs

android - 如何在单击的 Material 抽屉导航菜单项上启动 Activity

android - 在 VSCode 中使用 Flutter 时不断出现 Dart 错误

Flutter - Getx 仅在热重载后更新屏幕

flutter - 如何使用ByteArrayOutputStream和ByteBuffer

android - Cordova 3.3.0 Android 图标不会在应用程序管理器中更新

android - 自定义主题干扰 snackbar 背景颜色