You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter特定弧形容器样式实现求助

实现特定弧形容器的Flutter代码方案
  • 需求样式:容器左上角、右上角为直角,右下角为小圆角(半径32),左下角为大弧度圆角(弧度尺寸基于屏幕宽度的40%),背景为蓝色,容器占据屏幕高度的80%左右,四周带有指定边距。

以下是实现该样式的Flutter代码:

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
      // 容器边距:左右各16,顶部16,底部64
      margin: EdgeInsets.only(right: 16, left: 16, top: 16, bottom: 64),
      // 容器高度为屏幕高度的80%
      height: MediaQuery.of(context).size.height * 0.80,
      // 容器宽度为屏幕宽度减去32(抵消左右边距)
      width: MediaQuery.of(context).size.width - 32,
      decoration: BoxDecoration(
        // 容器背景色设为蓝色
        color: Colors.blue,
        // 配置圆角:左上、右上为直角,左下为大弧度,右下为小圆角
        borderRadius: BorderRadius.only(
          topLeft: Radius.circular(0),
          bottomLeft: Radius.circular(MediaQuery.of(context).size.width * 0.4),
          bottomRight: Radius.circular(32.0),
          topRight: Radius.circular(0)),
      ),
    );
  }
}

关键说明

  • 用BorderRadius.only单独控制每个角的圆角半径,实现差异化弧形效果
  • 依赖MediaQuery获取屏幕尺寸,保证容器在不同设备上的适配性
  • 边距、尺寸、圆角半径参数可根据需求自行调整

内容的提问来源于stack exchange,提问作者AkMax

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 04:01:44