0
votes

Erreur d'affichage de la liste de la liste ci-dessous conteneur

 Entrez la description de l'image ici

J'essaie d'afficher ListVieille à l'aide de la liste de réalisateur ListView en dessous de la couleur violette (comme indiqué dans l'image) Conteneur avec le code ci-dessous: P>

return Scaffold(
      body: Column(
        children: <Widget>[
            Container(
            height: 300,
            decoration: BoxDecoration(
              color: Colors.deepPurple,
              borderRadius: BorderRadius.only(bottomLeft: Radius.circular(75.0)),
              ),
            child: Column(
              children: <Widget>[
                Padding(
                  padding: const EdgeInsets.fromLTRB(0, 10, 200, 0),
                  child: Container(
                    padding: EdgeInsets.fromLTRB(0, 30,200,0),
                    child: IconButton(icon: Icon(Icons.arrow_back,),
                      color: Colors.black,
                      onPressed: () {
                        Navigator.pop(context);
                      },
                    ),
                  ),
                ),
                SizedBox(height: 20,),
                Text('Semester 1',
                  style: TextStyle(color: Colors.white,
                      fontSize: 30),
                )
              ],

            )
            ),
            Container(
              child: ListView.builder(
            itemCount: 1,
            itemBuilder: (BuildContext context, int index) {
              return new Container(
                  child: new Center(
                      child: new Column(
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: <Widget>[
                  new Card(
                      child: new Container(
                    child: new Text("hello"),
                    padding: const EdgeInsets.all(20),
                  ))
                ],
              )));
            }),
            )

        ], 
              ),

        );


0 commentaires

3 Réponses :


0
votes

Il suffit d'envelopper le listview dans développé . L'erreur ici est que listview ne sait pas comment se dimensionner (il a une hauteur sans bornes de la colonne ). En utilisant développé le dira de remplir tout l'espace restant et corrigez le problème de dimensionnement xxx


0 commentaires

0
votes

L'erreur est causée par un conteneur qui est emballage de listeView. Vous devez spécifier des limites pour ce conteneur.

return Scaffold(
      body: Column(
        children: <Widget>[
          Container(
            height: 300,
            decoration: BoxDecoration(
              color: Colors.deepPurple,
              borderRadius:
                  BorderRadius.only(bottomLeft: Radius.circular(75.0)),
            ),
            child: Column(
              children: <Widget>[
                Padding(
                  padding: const EdgeInsets.fromLTRB(0, 10, 200, 0),
                  child: Container(
                    padding: EdgeInsets.fromLTRB(0, 30, 200, 0),
                    child: IconButton(
                      icon: Icon(
                        Icons.arrow_back,
                      ),
                      color: Colors.black,
                      onPressed: () {
                        Navigator.pop(context);
                      },
                    ),
                  ),
                ),
                SizedBox(
                  height: 20,
                ),
                Text(
                  'Semester 1',
                  style: TextStyle(color: Colors.white, fontSize: 30),
                )
              ],
            ),
          ),
          Container(
            height: 300,
            child: ListView.builder(
                itemCount: 1,
                itemBuilder: (BuildContext context, int index) {
                  return Container(
                      child: Center(
                          child: Column(
                    crossAxisAlignment: CrossAxisAlignment.stretch,
                    children: <Widget>[
                      Card(
                          child: Container(
                        child: Text("hello"),
                        padding: const EdgeInsets.all(20),
                      ))
                    ],
                  )));
                }),
          )
        ],
      ),


0 commentaires

1
votes

Si vous utilisez ListView est petite et à l'intérieur de la colonne, vous devez ajouter rétractable: true strand> dans listview xxx pré>

ou si votre hauteur de listeView est corrigée, utilisez P>

Column(
  children: <Widget>[
    Expanded(
      child: ListView(...),
    )
  ],
)


0 commentaires