前提・実現したいこと
前提
FlutterでGoogleMapを使いアプリを作成しています。
現状はマーカーの取得を以下のように、Firebaseから取得したデータで表示しています。
dart
1GoogleMap( 2 initialCameraPosition: CameraPosition( 3 target: initialPosition, 4 zoom: 14.4746, 5 ), 6 onMapCreated: (mapController) { 7 this.mapController.complete(mapController); 8 }, 9 markers: documents 10 .map((document) => Marker( 11 markerId: MarkerId(document['placeId'] as String), 12 position: LatLng( 13 document['location'].latitude as double, 14 document['location'].longitude as double, 15 ), 16 infoWindow: InfoWindow( 17 title: document['name'] as String?, 18 snippet: document['address'] as String?, 19 ), 20 onTap: () async { 21 print(document['name']); 22 }, 23 )) 24 .toSet(), 25 myLocationEnabled: true,
もとになっているdocumentsは以下のようにStreamで取得しています
final Stream<QuerySnapshot> _storesStream = FirebaseFirestore.instance.collection('stores').snapshots();
それを以下のように別のクラスに渡しています
documents: snapshot.data!.docs,
実現したいこと
別の処理でこのマップに一時的にマーカーを追加したいです。
一時的というのは時間による制限ではなく、オン・オフをboolなどで判定したいです。
発生している問題・エラーメッセージ
Firebaseで直接取得している値をいじって一時的にマーカーを追加することは可能なのでしょうか?
また、それができない場合、なにか代替手段があれば、ご教授願います。
補足情報(FW/ツールのバージョンなど)
Flutter 2.2.3
google_maps_flutter: ^2.0.6
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。