欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

flutter 怎么实现app整体灰色效果

程序员文章站 2022-06-21 08:25:48
flutter 是 google 开源的 ui 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、web、桌面和嵌入式平台。flutter 开源、免费,拥有宽松的开源协议,适合商业项目...

flutter 是 google 开源的 ui 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、web、桌面和嵌入式平台。flutter 开源、免费,拥有宽松的开源协议,适合商业项目。

举国哀悼, 进入各种大厂的app也可以看到主色都变成灰色的了

作为程序员我们肯定会想怎么可以实现的, 我简单研究了10分钟, flutter中只要在整体外面套一个shadermask, 然后修改blendmode即可

核心代码:

class myapp extends statelesswidget {
 // this widget is the root of your application.
 @override
 widget build(buildcontext context) {
  return shadermask(
   child: oktoast(
    child: materialapp(
     title: 'pick image demo',
     theme: themedata(
      primaryswatch: colors.lime,
     ),
     home: myhomepage(title: 'pick image demo'),
    ),
   ),
   shadercallback: (rect bounds) {
    return ui.gradient.linear(offset.zero,
      offset(bounds.width, bounds.height), [colors.grey, colors.grey]);
   },
   // blendmode: blendmode.dst,
   blendmode: blendmode.saturation,
  );
 }
}

在最外层套一个shadermask,
然后返回一个shader就可以了, 这里我用的是渐变的gradient ,还有别的方式可以用

效果:

之前:

[文件]

flutter 怎么实现app整体灰色效果

之后:

flutter 怎么实现app整体灰色效果

总结

到此这篇关于flutter 怎么实现app整体灰度效果的文章就介绍到这了,更多相关flutter app灰度内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!