这是在我插入谷歌地图代码后发生的 我正在创建一个跟踪应用程序,它将使用谷歌地图来显示跟踪位置
错误如下所示
======== 小部件库捕获异常====================================== =================== 构建busNearby(dirty, state: _busNearbyState#460c7)时抛出以下_TypeError: 对空值使用空检查运算符
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('TRACKER'),
centerTitle: true,
backgroundColor: Colors.amber[500],
),
body: Stack(
children: <Widget>[
Column(
children: [
const HoveringWidget(),
GoogleMap(
initialCameraPosition: const CameraPosition(
target: _utm,
zoom: 13),
markers: {
Marker(
markerId: MarkerId("_currentLocation"),
icon: BitmapDescriptor.defaultMarker,
position: _currentP!),
Marker(
markerId: MarkerId("_sourceLocation"),
icon: BitmapDescriptor.defaultMarker,
position: _utm),
Marker(
markerId: MarkerId("_destinationLoaction"),
icon: BitmapDescriptor.defaultMarker,
position: _paradigm)
},
),
],
),
],
),
我可以假设
_currentP
在使用之前没有初始化。
您可以使用您首选的状态管理器或 FutureBuilder 来解决此问题。
FutureBuilder 示例:
FutureBuilder(
future: getCurrentP(),
builder: ((context, snapshot) {
if (!snapshot.hasData) {
return const SizedBox();
}
return Marker(
markerId: MarkerId("_currentLocation"),
icon: BitmapDescriptor.defaultMarker,
position: snapshot.data!);
}));