Возвращать только истинные значения после проверки условия в GridView.builder во флаттере - PullRequest
0 голосов
/ 05 августа 2020

Вот мой код:

FutureBuilder(
                  future: FirebaseDatabase.instance.reference().child('AllItems').once(),
                  builder: (context, snapshot) {
                    if(snapshot.hasData){
                      if (snapshot.data!=null) {
                        
                         return GridView.builder(

                itemCount: categoryItemList.length,
                gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(

                crossAxisCount:2), itemBuilder: (BuildContext context, int index){

                return  categoryItemList[index].CategoryName == widget.Category ?
                   Text(categoryItemList[index].Name,style: TextStyle(color: Colors.green),)
                      :null;

            }
            );
                      }else return Loader();
                    }else return Loader();
                  }
              )

Я хочу проверить условие, совпадает ли категория элемента с категорией, которую я получил на предыдущем экране, тогда он вернет имя элемента. Но что он делает, если имя категории не совпадает, вернет пустое место. Я не хочу этого пустого места, я хочу, чтобы на экране отображались только настоящие элементы. Как мне этого добиться.

...