flutter - 如何从不同的类访问 FlutterMap 控制器
问题描述
我正在尝试找到一种从课堂外部访问flutter_map控制器的方法,这个想法是我在地图屏幕上有标记。当您点击标记时,地图应移动,以便香料标记位于中间
标记类初始在不同类中的问题,因此我无法立即访问地图控件
我怎样才能让地图移动?
./screens/homeScreen.dart
class HomeScreen extends StatefulWidget {
static const routeName = '/home';
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
Widget build(BuildContext context) {
return Scaffold(
body:FlutterMap(
mapController: _mapController,
MarkerClusterLayerOptions(
onMarkerTap: (_) {
}, // Cluster tab
markers:externalReports.items // get the markers list
centerMarkerOnClick: true, // Cluster center
....),);}}
./externalReports.dart // where The Items Initial
_items.add(
Marker(
optionalDataContainer: data,
width: 45.0,
height: 45.0,
point: LatLng(
latitude,
longitude,),
builder: (context) => Container(
child: Container(
height: 45,
width: 45,
child: GestureDetector(
onTap: () {
// _mapController.move(LatLng(latitude,longitude), 15.0);
}))))
解决方案
我看到的最简单的选择是将其转换为全局实例。(或者您可以将其设为静态)。
但我必须说,这些选项不是很“漂亮”……
推荐阅读
- c++ - 如何使用根公钥以编程方式验证中间证书签名?
- python - Python 请求模块在 Windows 笔记本电脑上工作,但在 Ubuntu VPS 上不工作
- javascript - 有人知道 JavaScript 中 php 的 `$a['mykey'][] = $a` 的替代方法吗?
- r - 应用分段线性模型多年
- c# - 使用 c# 将 Excel 文件导入现有的 sqli 文件
- javascript - 事件未在 iframe 内触发
- python - Python:更改嵌套列表中的值
- c++ - c++ - const 成员 func,只能在左值实例上调用,使用 ref 限定符
- javascript - json添加新元素并使用js更新旧元素
- c++ - 如何缩短内部类私有的返回类型中的嵌套命名空间?