Цикл внутри стека виджет флаттер - PullRequest
0 голосов
/ 27 февраля 2020

У меня сейчас проблема, мне нужно использовать StreamBuilder, чтобы получить все данные из моей базы данных, а затем встроить все данные в виджет с позицией в нем. Поскольку я использую положение, мне нужно использовать Stack как родительский виджет. Но проблема в том, что я не могу использовать ListView Builder для l oop данных снимка. Есть ли способ для l oop внутри, чтобы я мог вернуть виджет?


                                   Stack(
                                        children: <Widget>[
                                          Container(
                                            color: Colors.white,
                                          ),
                                            StreamBuilder(
                                              // initialData: {'handler': "handler"},
                                              stream: mapPlacementStream.stream,
                                              builder: (context, snapshotPlacement) {
                                                dataPlacement = snapshotPlacement.data;
                                                if(!snapshotPlacement.hasData){
                                                  return const Text('Connecting...');
                                                }
                                                else{
                                                  return new StreamBuilder(
                                                  // initialData: {0: true},
                                                  stream: mapStateStream.stream,
                                                  builder: (context, snapshotState) {
                                                    dataState = snapshotState.data;
                                                    if(!snapshotState.hasData){
                                                      return const Text('Connecting...');
                                                    }
                                                    else{
                                                      return ParkPainter(
                                                            1, 
                                                            20, 
                                                            20,
                                                            1, 
                                                            true
                                                          );
                                                  }
                                                );
                                                }
                                              }
                                            ),
                                        ],
                                    )

В противном случае я возвращаю ParkPainter, чтобы увидеть, если он может напечатать ParkPainter (виджет с позицией) Он работает

...