Ani*_*udh 5 google-maps flutter
我正在尝试根据保存在我的云 Firestore 中的位置获取地图上的标记\n我用 Medium - Google Maps in Flutter上的教程编写了它\n我在通过 Navigator.push() 调用以下类时遇到此错误
\n // to implememnt\n\nimport \'dart:async\';\n//import \'dart:html\';\n\nimport \'package:basicSignIn/Global/color.dart\';\nimport \'package:cloud_firestore/cloud_firestore.dart\';\nimport \'package:flutter/material.dart\';\nimport \'package:flutter_spinkit/flutter_spinkit.dart\';\nimport \'package:fluttertoast/fluttertoast.dart\';\nimport \'package:geolocator/geolocator.dart\';\nimport \'package:google_maps_flutter/google_maps_flutter.dart\';\n\nclass MapShopPicker extends StatefulWidget {\n @override\n _MapShopPickerState createState() => _MapShopPickerState();\n}\n\nvar pposition;\n\nvar shopChosenValue = null;\n\nclass _MapShopPickerState extends State<MapShopPicker> {\n Completer<GoogleMapController> _controller = Completer();\n\n String _locationMessage = "";\n\n void _getCurrentLocation() async {\n final position = await Geolocator()\n .getCurrentPosition(desiredAccuracy: LocationAccuracy.high);\n print(position);\n pposition = position;\n\n setState(() {\n pposition = position;\n _locationMessage = "${position.latitude}, ${position.longitude}";\n });\n }\n\n @override\n void initState() {\n _getCurrentLocation();\n getClients();\n super.initState();\n }\n\n @override\n Widget build(BuildContext context) {\n return Scaffold(\n appBar: AppBar(\n actions: <Widget>[\n FlatButton(onPressed: _getCurrentLocation, child: Text(\'get loc\'))\n ],\n ),\n body: Stack(\n children: <Widget>[\n _googlemap(context),\n suggestion(context),\n /*_zoomout(),\n _zoomin(),\n _buildContainer(),*/\n ],\n ),\n );\n }\n\n Widget _googlemap(BuildContext context) {\n return Container(\n height: MediaQuery.of(context).size.height,\n width: MediaQuery.of(context).size.width,\n child: GoogleMap(\n mapType: MapType.normal,\n initialCameraPosition: CameraPosition(\n target: pposition == null\n ? LatLng(\n 20.5937,\n 78.9629,\n )\n : LatLng(pposition.latitude, pposition.longitude),\n zoom: 15.4,\n ),\n circles: {myLOC},\n markers: Set<Marker>.of(markers.values),\n onMapCreated: (GoogleMapController controller) {\n _controller.complete(controller);\n },\n ),\n );\n }\n\n CollectionReference collectionReference =\n Firestore.instance.collection(\'shopData\');\n\n Widget suggestion(BuildContext context) {\n return SizedBox(\n height: 80,\n width: 200,\n child: Container(\n decoration: BoxDecoration(\n color: Colors.white,\n borderRadius: BorderRadius.all(\n Radius.circular(30),\n ),\n ),\n child: StreamBuilder(\n stream: collectionReference.snapshots(),\n builder:\n (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {\n if (!snapshot.hasData)\n return new SpinKitFadingCircle(\n color: mydRed,\n size: 50,\n );\n\n if (snapshot.error == true) {\n Fluttertoast.showToast(\n msg: snapshot.error.toString(),\n toastLength: Toast.LENGTH_LONG,\n gravity: ToastGravity.BOTTOM,\n timeInSecForIosWeb: 2,\n backgroundColor: bg,\n textColor: mydRed,\n fontSize: 16.0);\n }\n\n return new NotificationListener<OverscrollIndicatorNotification>(\n onNotification: (overscroll) {\n overscroll.disallowGlow();\n },\n child: ListView(\n children: snapshot.data.documents.map(\n (document) {\n cardBuilder(\n context: context, name: document[\'Name\'].toString());\n },\n ).toList(growable: true),\n ),\n );\n },\n ),\n ),\n );\n }\n\n Widget cardBuilder({\n BuildContext context,\n String name,\n }) {\n return Align(child: Card(), alignment: Alignment.bottomLeft,);\n }\n\n //Markers below (mostly)\n\n getClients() {\n collectionReference.getDocuments().then((docs) {\n if (docs.documents.isNotEmpty) {\n for (int i = 0; i < docs.documents.length; ++i) {\n initMarker(docs.documents[i].data, docs.documents[i].documentID);\n }\n }\n });\n }\n\n Map<MarkerId, Marker> markers = <MarkerId, Marker>{};\n\n initMarker(request, requestId) {\n var markerIdVal = requestId;\n final MarkerId markerId = MarkerId(markerIdVal);\n\n //create marker\n final Marker marker = Marker(\n markerId: markerId,\n position: LatLng(request[\'Lat\'], request[\'Lon\']),\n infoWindow: InfoWindow(\n title : request[\'Name\'], snippet: request[\'Call\']\n ),\n\n );\n\n setState(() {\n markers[markerId] = marker;\n print (markerId);\n });\n }\n\n Circle myLOC = Circle(\n circleId: CircleId(\'myLOC\'),\n center: pposition,\n radius: 5,\n fillColor: mydRed.withOpacity(0.4),\n strokeColor: mydRed,\n strokeWidth: 2,\n );\n}\n\nclass UserLocation {\n final double latitude;\n final double longitude;\n\n UserLocation({this.latitude, this.longitude});\n}\n\n/*StreamBuilder(\n stream: collectionReference.snapshots(),\n builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {\n if (!snapshot.hasData)\n return new SpinKitFadingCircle(\n color: mydRed,\n size: 50,\n );\n\n if (snapshot.error == true) {\n Fluttertoast.showToast(\n msg: snapshot.error.toString(),\n toastLength: Toast.LENGTH_LONG,\n gravity: ToastGravity.BOTTOM,\n timeInSecForIosWeb: 2,\n backgroundColor: bg,\n textColor: mydRed,\n fontSize: 16.0);\n }\n\n return new NotificationListener<OverscrollIndicatorNotification>(\n onNotification: (overscroll) {\n overscroll.disallowGlow();\n },\n child: ListView(\n children: snapshot.data.documents.map(\n (document) {\n return new AppointmentCard(\n name: document[\'Name\'].toString(),\n age: document[\'Age\'].toString(),\n mob: document[\'Mob\'].toString(),\n date: document[\'Date\'].toString(),\n serviceH: document[\'ServiceH\'].toString(),\n serviceS: document[\'ServiceS\'].toString(),\n //image: document[\'ImagePath\'].toString(),\n );\n },\n ).toList(),\n ),\n );\n },\n ),\n */\nRun Code Online (Sandbox Code Playgroud)\n控制台中的错误:-
\n\\I/flutter (25298): \xe2\x95\x90\xe2\x95\x90\xe2\x95\xa1 EXCEPTION CAUGHT BY WIDGETS LIBRARY \xe2\x95\x9e\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\nI/flutter (25298): The following NoSuchMethodError was thrown building GoogleMap(dirty, state: _GoogleMapState#0f8ef):\nI/flutter (25298): The method \'toJson\' was called on null.\nI/flutter (25298): Receiver: null\nI/flutter (25298): Tried calling: toJson()\nI/flutter (25298): The relevant error-causing widget was:\nI/flutter (25298): GoogleMap\nI/flutter (25298): file:///D:/MYD/appBuilds/mydSalon/firebaseWorking/basicSignIn/lib/Navs/googleMapChoose.dart:71:14\nI/flutter (25298): When the exception was thrown, this was the stack:\nI/flutter (25298): #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:53:5)\nI/flutter (25298): #1 Circle.toJson (package:google_maps_flutter_platform_interface/src/types/circle.dart:139:35)\nI/flutter (25298): #2 serializeCircleSet.<anonymous closure> (package:google_maps_flutter_platform_interface/src/types/utils/circle.dart:21:60)\nI/flutter (25298): #3 MappedIterator.moveNext (dart:_internal/iterable.dart:395:20)\nI/flutter (25298): #4 new List.from (dart:core-patch/array_patch.dart:35:29)\nI/flutter (25298): #5 Iterable.toList (dart:core/iterable.dart:400:12)\nI/flutter (25298): #6 serializeCircleSet (package:google_maps_flutter_platform_interface/src/types/utils/circle.dart:21:70)\nI/flutter (25298): #7 _GoogleMapState.build (package:google_maps_flutter/src/google_map.dart:225:23)\nI/flutter (25298): #8 StatefulElement.build (package:flutter/src/widgets/framework.dart:4619:28)\nI/flutter (25298): #9 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4502:15)\nI/flutter (25298): #10 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #11 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #12 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #13 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #14 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #15 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #16 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #17 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #18 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5)\nI/flutter (25298): #19 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #20 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5522:32)\nI/flutter (25298): #21 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5957:17)\nI/flutter (25298): #22 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #23 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #24 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #25 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5)\nI/flutter (25298): #26 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #27 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #28 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #29 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5)\nI/flutter (25298): #30 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #31 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #32 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #33 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5)\nI/flutter (25298): #34 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #35 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5522:32)\nI/flutter (25298): #36 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5957:17)\nI/flutter (25298): #37 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #38 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #39 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #40 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #41 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #42 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #43 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #44 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #45 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5)\nI/flutter (25298): #46 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #47 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #48 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #49 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #50 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #51 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #52 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #53 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #54 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #55 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #56 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5)\nI/flutter (25298): #57 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #58 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #59 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #60 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #61 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #62 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #63 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #64 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #65 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #66 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #67 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #68 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #69 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #70 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #71 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #72 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5)\nI/flutter (25298): #73 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #74 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #75 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #76 ProxyElement.update (package:flutter/src/widgets/framework.dart:4862:5)\nI/flutter (25298): #77 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #78 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #79 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #80 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #81 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #82 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #83 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #84 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #85 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #86 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #87 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #88 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #89 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #90 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #91 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #92 StatelessElement.update (package:flutter/src/widgets/framework.dart:4583:5)\nI/flutter (25298): #93 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #94 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #95 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #96 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #97 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #98 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4527:16)\nI/flutter (25298): #99 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4675:11)\nI/flutter (25298): #100 Element.rebuild (package:flutter/src/widgets/framework.dart:4218:5)\nI/flutter (25298): #101 StatefulElement.update (package:flutter/src/widgets/framework.dart:4707:5)\nI/flutter (25298): #102 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #103 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5837:14)\nI/flutter (25298): #104 Element.updateChild (package:flutter/src/widgets/framework.dart:3201:15)\nI/flutter (25298): #105 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5
| 归档时间: |
|
| 查看次数: |
3393 次 |
| 最近记录: |