Получение ошибки нижнего переполнения, даже если внутри ListView

Я пытаюсь понять, что я делаю неправильно. Разве он никогда не должен вызывать эту ошибку, поскольку он находится внутри ListView с вертикальной прокруткой?

body: Center(
            child: FutureBuilder<FiveDaysForecast>(
          future: forecast,
          builder: (context, snapshot) {
            if (snapshot.hasData) {
              return ListView(scrollDirection: Axis.vertical, children: [
                Container(
                    padding: EdgeInsets.all(30),
                    margin: EdgeInsets.fromLTRB(5, 20, 5, 30),
                    child: Column(
                      children: [
                        Image.network(
                            snapshot.data.getCurrentWeatherImageUrl())],
                    )),
                Container(width: 100, height: 60, child: ListView.builder(
                    scrollDirection: Axis.horizontal,
                    itemBuilder: (context, index) {
                      return Container(
                        width: 70,
                        //height: 70,
                        //padding: EdgeInsets.all(5),
                        margin: EdgeInsets.fromLTRB(5, 10, 5, 10)),
                        child: Column(children: [
                          Image.network(
                              "${snapshot.data.getNextFiveHours()[index].getWeatherImageUrl()}"),
                          Text(
                              "${snapshot.data.getNextFiveHours()[index].dateTime.hour}:00",
                              style: GoogleFonts.roboto(
                                  fontSize: 16, color: Colors.white))
                        ]),
                      );
                    },
                    itemCount: 5),),
              ]);
            }
            if (_cityName == "") {
              return Text("Search a city");
            } else {
              return CircularProgressIndicator();
            }
          },
        )),

Я пытаюсь создать приложение с вертикальной прокруткой, содержащее горизонтальное представление списка и контейнер.

Вы пытались удалить виджет Center из тела и использовать его только с CircularProgressIndicator?

erknvl 20.12.2020 19:50

Та же ошибка, только что попробовал

Tito Tigi 20.12.2020 19:58

Можете ли вы прислать мне скриншот консоли отладки?

erknvl 20.12.2020 20:00
Почему в Python есть оператор &quot;pass&quot;?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
3
71
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете попробовать это

body: FutureBuilder<FiveDaysForecast>(
    future: forecast,
    builder: (context, snapshot) {
      return snapshot.hasData ? ListView(scrollDirection: Axis.vertical, children: [
        Container(
          padding: EdgeInsets.all(30),
          margin: EdgeInsets.fromLTRB(5, 20, 5, 30),
          child: Column(
            children: [Image.network(snapshot.data.getCurrentWeatherImageUrl())],
          ),
        ),
        Container(
          width: 100, height: 60,
          child: ListView.builder(
            scrollDirection: Axis.horizontal,
            itemBuilder: (context, index) {
              return Container(
                width: 70,
                //height: 70,
                //padding: EdgeInsets.all(5),
                margin: EdgeInsets.fromLTRB(5, 10, 5, 10),
                child: Column(
                  children: [
                  Expanded(
                    child: Image.network("${snapshot.data.getNextFiveHours()[index].getWeatherImageUrl()}"),
                  ),
                  Text("${snapshot.data.getNextFiveHours()[index].dateTime.hour}:00", style: GoogleFonts.roboto(
                    fontSize: 16,
                    color: Colors.white,
                  )),
              ],),);
            },
            itemCount: 5),),
      ]) : Center(
        child: _cityName.isEmpty ? Text("Search a city") : CircularProgressIndicator(),
      );
    },
  )

Не работает. Та же ошибка. Я пробовал как редактировать свой код, так и копировать и вставлять ваш

Tito Tigi 20.12.2020 20:05

Я включил ваш Image.network в расширенный виджет. Попробуйте новый код

dm_tr 20.12.2020 20:15

Это сработало! Большое спасибо! Можете ли вы объяснить мне, почему мне нужно было обернуть изображение в расширенный виджет?

Tito Tigi 20.12.2020 20:29

Другие вопросы по теме