158 votes

Dart: mappage d'une liste (list.map)

J'ai une liste de String s, par exemple,

 var moviesTitles = ['Inception', 'Heat', 'Spider Man'];
 

et voulait utiliser moviesTitles.map pour les convertir en une liste de Tab Widget s dans Flutter.

240voto

vous pouvez utiliser

moviesTitles.map((title) => Tab(text: title)).toList()

Exemple:

     bottom: new TabBar(
      controller: _controller,
      isScrollable: true,
      tabs:
        moviesTitles.map((title) => Tab(text: title)).toList()
      ,
    ),
 

7voto

J'essaie cette même méthode, mais avec une liste différente avec plus de valeurs dans la carte des fonctions. Mon problème était d'oublier une déclaration de retour. C'est très important :)

  bottom: new TabBar(
      controller: _controller,
      isScrollable: true,
      tabs:
        moviesTitles.map((title) { return Tab(text: title)}).toList()
      ,
    ),
 

7voto

AlexPad Points 1432

Oui, vous pouvez aussi le faire de cette façon

  List<String> listTab = new List();
 map.forEach((key, val) {
  listTab.add(val);
 });

 //your widget//
 bottom: new TabBar(
  controller: _controller,
  isScrollable: true,
  tabs: listTab
  ,
),
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X