ListView.builder () во флаттере - PullRequest
0 голосов
/ 13 января 2019

рассмотрим следующую функцию build ()

Widget build(BuildContext context){ return MaterialApp( home: Scaffold( body: Center( child: ListView.builder( itemCount: 6, itemBuilder: (context, i){ if(numberTruthList[i]){ return ListTile( title: Text("$i"), ); } }, ), ) ), ); }

, если numberTruthList равно

List<bool> numberTruthList = [true, true, true, true , true, true];

, тогда выходной результат будет enter image description here

и если numberTruthList равно

List<bool> numberTruthList = [false, true, true, true , true, true]; выход выходит enter image description here

Я хочу, чтобы вывод был ListView с элементами

ListTile( title: Text("$i"), );

для значений i таких, что numberTruthList [i] равно true, каким должен быть код

1 Ответ

0 голосов
/ 13 января 2019
ListView.builder(
  itemCount: 6,
  itemBuilder: (context, i) {
    return numberTruthList[i]
      ? ListTile(
          title: Text(numberTruthList[i].toString()),
        )
      : Container(
          height: 0,
          width: 0,
        );
   },
)
...