Flutter中如何实现示例图的3D球体效果,现有RadialGradient配置不符合预期怎么办
实现球形渐变勾选按钮的调整方案
你原代码的渐变仅设置了两层色值,缺少示例图中球形特有的顶部高光、中部主色、底部暗部的三层光影层次,也缺少边缘的细微光影质感,可按以下方案调整:
Container( height: 50, width: 50, decoration: BoxDecoration( shape: BoxShape.circle, gradient: const RadialGradient( center: Alignment(-0.3, -0.6), radius: 0.65, colors: [ Color(0xff69E5A8), // 顶部高亮区 Color(0xff3FD18B), // 亮部过渡色 Color(0xff21B56E), // 主体绿色 Color(0xff159759), // 底部暗部 ], stops: [0.0, 0.3, 0.7, 1.0], ), boxShadow: [ // 外阴影模拟悬浮效果 BoxShadow( color: Colors.black12, blurRadius: 6, offset: Offset(0, 3), ), // 内阴影模拟顶部边缘亮边 BoxShadow( color: Colors.white24, blurRadius: 2, offset: Offset(-1, -1), spreadRadius: -1, ) ], ), child: const Icon(Icons.done_rounded, color: Colors.white, size: 28), )
如果和你预期效果有偏差,可微调center(高光位置)、radius(高光扩散范围)、色值以及阴影参数,直到和参考效果匹配。
内容的提问来源于stack exchange,提问作者Shehan Madushanka
相关产品推荐
相关产品推荐

