flutter设置最大高度,超过最大高度时滑动显示

ConstrainedBox

用于对子组件添加额外的约束。例如,如果你想让子组件的最小高度是80像素,你可以使用const BoxConstraints(minHeight: 80.0)作为子组件的约束。

约束:BoxConstraints

BoxConstraints 是盒模型布局过程中父渲染对象传递给子渲染对象的约束信息,包含最大宽高信息,子组件大小需要在约束的范围内,BoxConstraints 默认的构造函数如下:

Dart 复制代码
const BoxConstraints({
  this.minWidth = 0.0, //最小宽度
  this.maxWidth = double.infinity, //最大宽度
  this.minHeight = 0.0, //最小高度
  this.maxHeight = double.infinity //最大高度
})

它包含 4 个属性,BoxConstraints还定义了一些便捷的构造函数,用于快速生成特定限制规则的BoxConstraints,如

  • BoxConstraints.tight(Size size),它可以生成固定宽高的限制;
  • BoxConstraints.expand()可以生成一个尽可能大的用以填充另一个容器的BoxConstraints。
  • 除此之外还有一些其它的便捷函数。

父级组件是通过 BoxConstraints 来描述对子组件可用的空间范围。


代码如下:

Dart 复制代码
// ConstrainedBox 用于对子组件添加额外的约束
ConstrainedBox(
  // BoxConstraints 是盒模型布局过程中父渲染对象传递给子渲染对象的约束信息,包含最大宽高信息,子组件大小需要在约束的范围内
  constraints: BoxConstraints(maxHeight: JwSizes.height240),
  // SingleChildScrollView是Flutter中的一个基础滚动组件,它可以让单个组件滚动
  child: SingleChildScrollView(
    // 设置垂直方向滑动
    scrollDirection: Axis.vertical,
    child: Row(
      mainAxisAlignment: MainAxisAlignment.spaceEvenly,
      children: [
        Column(
          children: [],
        ),
        Column(
          children: [],
        ),
        Column(
          children: [],
        ),
      ],
    ),
  ),
),
相关推荐
gavin carter5 小时前
Flutter遇到的问题
flutter
Cao_Shixin攻城狮8 小时前
[Flutter]Completer和compute
flutter
sg_knight8 小时前
Flutter跨平台通信实战|3步打通Android原生能力,实现底层API调用!
android·前端·javascript·flutter·跨平台·web·双向通信
君的名字13 小时前
怎么判断一个Android APP使用了flutter 这个跨端框架
android·flutter
造梦师1 天前
关于flutter中Scaffold.of(context).openEndDrawer();不生效问题
flutter
程序员老刘·1 天前
Flutter 3.32 升级要点全解析
flutter·跨平台开发·客户端开发
Cao_Shixin攻城狮1 天前
Flutter 3.32 新特性
flutter·flutter 3.32·flutter3.32
WDeLiang1 天前
Flutter - 国际化
flutter·dart
androidwork1 天前
Kotlin与Flutter:跨平台开发的互补之道与实战指南
开发语言·flutter·kotlin