【问题标题】:Ionic Sidemenu and Native Google Maps离子侧边菜单和原生谷歌地图
【发布时间】:2016-07-05 21:24:05
【问题描述】:

我正在开发一个使用侧面菜单的 Ionic 应用程序。当导航到一个模板时,它只是一个用于呈现谷歌地图的 div(本机使用 cordova-plugin-maps)。侧菜单覆盖在地图上。奇怪的是我可以通过侧边菜单与地图进行交互。

使用 Javascript Google Maps 时效果很好。

这是它的外观截图:

同样的东西出现在 Android 设备上。

非常感谢帮助解决问题!

编辑: 我忘了提到我正在从普通页面(不是侧面菜单)转换,因此上面的后退按钮。我希望它更具体。

【问题讨论】:

  • 嗨,您找到解决方案了吗?
  • 是的。我在下面添加了一个答案

标签: cordova google-maps ionic-framework


【解决方案1】:

因为cordova-google-maps插件的地图跟随mapDiv位置。

ionic-framework 在地图 div 下创建侧边菜单

您应该在地图 div 上方创建侧边菜单。

在这里查看。 https://forum.ionicframework.com/t/using-google-maps-cordova-plugin/4456/49

【讨论】:

  • 我查看了论坛帖子,似乎没有人直接回答。你能告诉我如何解决这个问题的代码吗?
【解决方案2】:

我终于找到了!!

转换到地图时,您必须隐藏<ion-side-menu>。例如(我做了什么):

document.getElementById("side-menu").style.visibility = 'hidden';

离开地图时,在 $stateChangeSuccess 回调中,将其设置回"visible"

希望这会有所帮助!

【讨论】:

【解决方案3】:

你实际上可以这样设置:

地图

<ion-item nav-clear menu-close ng-click="fuction to call the map page">

<ion-item nav-clear menu-close ui-sref="url to page">

*当您点击菜单中的地图时,侧边菜单会关闭并显示页面。

【讨论】:

    【解决方案4】:

    scss ionic.app.scss 或 www/csss/

    body.menu-open .menu.menu-left {
        visibility: visible;
    }
    .menu.menu-left {
        visibility: hidden;
    }
    

    【讨论】:

      【解决方案5】:

      这对我有用: 1.将ng-hide放到

      <ion-side-menu side="left" data-ng-hide="hideLeft">
      
      1. 观看菜单控制器中的 $ionicSideMenuDelegate

      // hack sidemenu overlay $scope.$watch(function () { return $ionicSideMenuDelegate.getOpenRatio(); }, function (newValue, oldValue) { if (newValue == 0) { $scope.hideLeft = true; } else { $scope.hideLeft = false; } });

      【讨论】:

        【解决方案6】:

        就个人而言,我找到了一个优雅的解决方案(右侧菜单):

        .menu.menu-right {
            transform: translate3d(100%, 0, 0) !important;
            -webkit-transition: transform 200ms ease;
            transition: transform 200ms ease;
        }
        
        .menu-open {
            .menu.menu-right {
                transform: translate3d(0, 0, 0) !important;
            }
        }
        

        【讨论】:

          【解决方案7】:

          您需要更改标签ion-menu的默认类型

          <ion-menu type="reveal" [content]="content">
          ...
          ...
          ...
          </ion-menu>
          

          【讨论】:

          • 我的问题不是使用 Ionic 2
          猜你喜欢
          • 2015-08-24
          • 2019-12-14
          • 2018-05-24
          • 2018-04-29
          • 1970-01-01
          • 2018-06-01
          • 2016-12-01
          • 1970-01-01
          相关资源
          最近更新 更多