android - 华为 map 没有响应 Offstage Flutter

标签 android flutter google-maps huawei-developers huawei-map-kit

我在我的应用程序中有使用 GoogleMaps 的 map ,但现在我需要将我的应用程序上传到 AppGallery,并且我正在尝试使用华为 map 来完成我的功能。
但是华为 map 与谷歌地图不一样,我不知道为什么。
这是我的应用程序, map 现在应该被 Offstage 类隐藏,我也尝试了不透明度,同样的效果,它在 Stack 类中没有正确显示,这些 map 有什么问题?
enter image description here
这是我的代码:

return Builder(
              builder: (context) {
                bContext = context;
                widget.firstLoad = false;
                googleMapKey = GlobalKey<GoogleMapDrawerState>(
                    debugLabel: 'googleMapWidget');
                Provider.of<ControllerProvider>(context, listen: false)
                    .loadGoogleMapKey(googleMapKey);
                var googleMap = GoogleMapDrawer(
                    key: googleMapKey,
                    mapCompleted: (controller) {
                      Provider.of<ControllerProvider>(context, listen: false)
                          .loadController(controller);
                      if (Theme.of(context).brightness == Brightness.dark) {
                        Provider.of<ControllerProvider>(context, listen: false)
                            .changeTheme(Brightness.dark);
                      }
                    },
                    markers:
                        Provider.of<ControllerProvider>(context, listen: false)
                                    .marker !=
                                null
                            ? [
                                Provider.of<ControllerProvider>(context,
                                        listen: false)
                                    .marker
                              ]
                            : [],
                    cameraPosition: hm.CameraPosition(
                        target: hm.LatLng(53.00825 + 0.004, 18.59762), zoom: 15));
                return Scaffold(
                  body: Stack(children: [
                    Offstage(
                      offstage: true,
                      child: googleMap,
                    ),
这是我的类 GoogleMapDrawer:
return SizedBox(
      height: size.height * 0.51,
      width: size.width,
      child: /*GoogleMap(
          initialCameraPosition: widget.cameraPosition!,
          markers: markers != null ? Set.from(markers) : <Marker>{},
          onMapCreated: (controller) {
            Provider.of<ControllerProvider>(context, listen: false)
                .currentMapBrightness = Theme.of(context).brightness;
            widget.mapCompleted(controller);
          })*/
          HuaweiMap(
              initialCameraPosition: widget.cameraPosition!,
              markers: markers != null ? Set.from(markers) : <Marker>{},
              onMapCreated: (controller) {
                Provider.of<ControllerProvider>(context, listen: false)
                    .currentMapBrightness = Theme.of(context).brightness;
                widget.mapCompleted(controller);
              },
          )
    );
我留下了注释代码以表明它与华为 map 的代码与谷歌地图的代码相同。
使用谷歌地图,它工作得很好,现在不行了。
同样在另一个 View 中, map 应该在其他小部件下,但 HuaweiMaps 位于其他小部件之上。为什么会这样工作以及如何解决?

最佳答案

https://github.com/HMS-Core/hms-flutter-plugin/issues/191
我发现了这个问题,所以可能是华为 map 包的问题

关于android - 华为 map 没有响应 Offstage Flutter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72714599/

相关文章:

flutter - 使用 flutter 包有缺点吗?

android - Robolectric, Gradle, Espresso with Flavours

android - 在没有用户交互的情况下从 Flutter 应用程序发送短信?

firebase - 用于 Flutter 的 Firestore 上的 Cloud Functions

flutter - 如何在 Flutter 中实现嵌套 ListView?

google-maps - 在 Google 静态 map 上创建消息气泡和路径

android 可滚动 Activity 布局

Android Activity,如何覆盖 list 的android :configChanges with Java code?

java - GOOGLE MAPS API - 如何在没有 map.setMyLocationEnabled(boolean) 的情况下获取我的位置?

javascript - 有没有办法在 google API URL 之外调用 google initMap 回调函数?