как создать горизонтальный список во флаттере - PullRequest
0 голосов
/ 02 мая 2020

Я пытаюсь развернуть горизонтальный вид списка во флаттере. когда я когда-либо набираю scrollDirection: Axis.horizontal, и перезапускаю программу, у меня возникают проблемы, говоря. Я попытался стереть все с listview, но также не работает enter image description here enter image description here

body: Container(
child:ListView.builder(                  
      itemCount: _list.length,
       itemExtent: 200.0,
      itemBuilder: (context, i) {
        final b = _list[i];

        return new ListTile(
            title: new Card(
              elevation: 1.0,
              child: new Container(
                height: 293,
                decoration: BoxDecoration(
                    color: Colors.white,
                    borderRadius: BorderRadius.all(Radius.circular(10.0)),
                    boxShadow: [
                      BoxShadow(
                          blurRadius: 6,
                          color: Colors.black,
                          offset: Offset(4, 4))
                    ]),
                padding: EdgeInsets.all(1.0),
                child: 
                Column(
                  children: <Widget>[
                    SizedBox(height: 4),
                    Padding(
                      child: Image.network(b.bikeimage),
                      padding: EdgeInsets.only(bottom: 0.0),
                    ),
                    Padding(
                      child: Text(
                        b.name,
                        textAlign: TextAlign.right,
                        style: TextStyle(
                            fontWeight: FontWeight.bold,
                            fontSize: 20,
                            color: Colors.black), ),
                      padding: EdgeInsets.only(left: 10),
                    ),
                  ],
                ),
              ),
            ),
            onTap: () {
            });
      },
    ),

)

Ответы [ 3 ]

1 голос
/ 03 мая 2020

Вы получили ошибку, потому что вашему контейнеру не были заданы определенная ширина и высота.

Код ниже будет работать отлично, проверьте,

body: Container(
      // give your container any desired height
       height: 500,
       // give your container any desired width
       width: double.infinity,
       child: ListView.builder(    

       // set the scroll direction to horizontal for a horizontal list
       scrollDirection: Axis.horizontal,              
      ...
      // the rest of your listview.builder code here
      ...
       ),
     );

Надеюсь, это поможет.

0 голосов
/ 02 мая 2020

Вы не упомянули направление прокрутки в вашем коде, добавьте его и попробуйте. Подробнее см. https://pusher.com/tutorials/flutter-listviews

0 голосов
/ 02 мая 2020

Похоже, ваш контейнер не имеет ограничений по высоте или ширине, поэтому его нельзя нарисовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...