【问题标题】:Flutter - Constant flickering in the mapFlutter - 地图中不断闪烁
【发布时间】:2021-02-17 15:46:55
【问题描述】:

我有以下问题:我正在使用 Location 包实时获取位置,我已经在地图中设置了标记,并且当位置更新时,地图开始闪烁:https://photos.app.goo.gl/GsFdB4pHzjoUcVZ6A

更新标记位置的代码是:

subscription = location.onLocationChanged.listen((currentLocation) {
  //Update the animated marker
      setState(() {
        Marker sourceMarker = Marker(
          markerId: sourceId,
          position: LatLng(
            currentLocation.latitude,
            currentLocation.longitude,
          ),
        );
        _markers[sourceId] = sourceMarker;
   });
});

【问题讨论】:

  • 您能否分享更多代码,尤其是您在地图上设置标记列表的位置。
  • 我没有更多代码了。 _locationSubsription 设置在 initState 方法中,_markers 声明为 final Map<MarkerId, Marker> _markers = Map<MarkerId, Marker>();
  • 你找到解决办法了吗??
  • @Nitesh 我从头开始再次创建视图,但我将问题发布在 Github 问题列表中:github.com/flutter/flutter/issues/78638

标签: flutter google-maps


【解决方案1】:

我遇到了类似的事情,我能够解决它。

不确定这是否会有所帮助,但仍试一试。

我的代码结构是这样的:

  • 我的地图在一个单独的类中 (ShowMap)
  • 我在Home 屏幕上使用ShowMap 类和Stack

这就是整个问题。

基本上,ShowMap 类拥有自己的 build 方法会导致闪烁。所以,我不得不将ShowMap 转换为function 返回一个小部件。

由于ShowMap 没有自己的build,它正在使用Home 屏幕的build,因此闪烁停止。

【讨论】:

    猜你喜欢
    • 2021-10-20
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2011-11-22
    • 2015-08-28
    • 2018-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多