質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

Q&A

解決済

1回答

946閲覧

Flutter Widgetをあるイベントで再生成する方法

takumi123

総合スコア59

Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

0グッド

0クリップ

投稿2020/09/24 20:06

問題

Flutterで開発をしており、GoogleMapを使っています。
GoogleMap内で検索をFlutterで実装しており、検索するとalgoliaにクエリを投げてデータを取得します。

しかし、GoogleMapの初期カメラ位置が変わりません。
以下コードの「initialCameraPosition」が初期位置を決めるプロパティです。

dart

1new GoogleMap( 2 mapType: MapType.normal, 3 myLocationButtonEnabled: false, 4 initialCameraPosition: CameraPosition( 5 target: model.detailposts[0].locationCoords, 6 zoom: 13.0), 7 markers: Set.from(model.allMarkers), 8 onMapCreated: (GoogleMapController controller) { 9 model.controller = controller; 10 model.controller.showMarkerInfoWindow( 11 model.allMarkers[0].markerId); 12 }, 13 zoomControlsEnabled: false, 14)

model.detailposts[0]は、検索した値が入ります。
これは期待通りの値が入っています。

補足イメージ

正常動作:検索しない場合はマーカーの位置にカメラが用意されます。
イメージ説明

異常動作:検索した場合は、カメラの位置が変わりません。
イメージ説明

検索をしても、カメラの位置をマーカーに移動したいと思います。
そのためにはGoogleMapのWidgetを再生成する必要があると思いますが、どうすれば良いですか?

StatelessWidgetを使っています。
できればStatefullWidgetは使わず実装したいと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

イベントが発生するたびに、GoogleMapWidgetのkeyに新しいUniqueKeyとか割り当てたら再生成されないですかね。

パッケージのサンプルのように、GoogleMapControllerを使用してカメラ移動した方が無難な気がしますが。

  • パッケージのサンプル

https://github.com/flutter/plugins/blob/master/packages/google_maps_flutter/google_maps_flutter/example/lib/move_camera.dart

投稿2020/09/25 04:30

satokei

総合スコア1217

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takumi123

2020/09/25 05:39

Controllerを利用して、カメラ移動をすることにしました。 回答ありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問