SuperAPI AI 工具集

flutter-building-layouts

通用与其它

查看项目

更新于 10-15 21:55

技能介绍

用途:帮助在 Flutter 应用中创建或改进 UI 结构,依据约束系统与布局组件来搭建布局。

核心原则:约束向下传递、尺寸向上返回、位置由父级决定。子组件无法脱离父级约束自行决定尺寸,也不知道自己在屏幕上的位置。避免在 Row/Column 的交叉轴或滚动区域内传递无界约束(如 double.infinity),否则会渲染异常。

主要组件用法:Row 与 Column 实现水平、垂直线性布局,用 mainAxisAlignment 和 crossAxisAlignment 控制对齐。Expanded 让子组件填满可用空间,Flexible 允许子组件在可用空间内自定尺寸。Container 用于 padding、margin、边框或背景色。Stack 用于 Z 轴重叠,Positioned 用于锚定到指定边缘。SizedBox 用显式宽高施加严格紧约束。

自适应与响应式:若需适配可用空间,用 LayoutBuilder、Expanded、Flexible 动态调整;若需针对特定形态调整可用性,用条件渲染切换整体结构,例如移动端底部导航栏、平板或桌面端侧边导航栏。

工作流程:阶段一视觉拆解,把目标 UI 分解为行列与网格,识别重叠元素和滚动区域;阶段二约束规划,区分紧约束与松约束,识别无界约束风险;阶段三从外向内实现,先写 Scaffold 与主要结构组件,并把深层嵌套抽取为独立无状态组件;阶段四在目标设备或模拟器上运行,用 Flutter Inspector 开启 Debug Paint 检查渲染盒,留意黄黑条纹溢出警告,溢出时在弹性盒内用 Expanded 包裹,或将父级改为可滚动组件。

限制:资料未给出安装、收费、平台或效果相关的其他信息。