无法将 ListView 放入 Column 中?

问题描述

我需要在 Column(它是 SingleChildScrollView 的子项)中使用 listview,但它没有显示出来!

import 'package:Flutter/material.dart';
import 'package:font_awesome_Flutter/font_awesome_Flutter.dart';

class BalanceScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SingleChildScrollView(
        child: Column(
          children: [
            Padding(padding: const EdgeInsets.symmetric(vertical: 24),child: Center(child: Text('15 960 UZS',),Container(height: 48,alignment: Alignment.centerLeft,padding: EdgeInsets.symmetric(horizontal: 24),child: Row(children: [Text('Refill balance',Spacer(),FaIcon(FontAwesomeIcons.chevronRight,size: 15,],///this is causing problem! But i need listview here
            ListView(
              children: [
                Text('some text 1'),Text('some text 2'),)
          ],);
  }
}

显示在终端中:

enter image description here

解决方法

SingleChildScrollView 应该被删除,ListView 应该用 Expanded 小部件包装

 Expanded(   
      child:ListView(
              children: [
                Text('some text 1'),Text('some text 2'),],)
       )

由于 ListView 高度是无限的,而 Column 小部件想要孩子的高度值。它给出了一个 hasSize 期望

,

在 ListView 中添加 shrinkWrap: true 应该可以解决错误