有问题的特定RenderFlex是:RenderFlex#1c11f溢出

时间:2020-09-21 08:56:42

标签: flutter compiler-errors flutter-layout

我试图在Column中添加一堆小部件,而根小部件是Material。简单的代码引发错误,我不明白为什么会导致错误。 我的代码是:

import 'dart:math';

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Material(
      child: Container(
        child: Column(
          children: [
            Text('234')
          ],
        ),
      )
    );
  }
}

错误是:


════════ Exception caught by rendering library ═════════════════════════════════
A RenderFlex overflowed by 99263 pixels on the bottom.
The relevant error-causing widget was
    Column 
lib\main.dart:14
The specific RenderFlex in question is: RenderFlex#1c11f OVERFLOWING
════════════════════════════════════════════════════════════════════════════════
Reloaded 1 of 513 libraries in 707ms.

我的代码怎么了?

2 个答案:

答案 0 :(得分:0)

这里的问题是,您的列的高度是无限的。

您可以做的一些事情:

  • 将所有内容放入Scaffold body
  • height属性添加到您的Container
  • mainAxisSize: MainAxisSize.min交给您Column

答案 1 :(得分:0)

把这个

body: SingleChildScrollView(
  child: Form(
    ...