【发布时间】:2017-04-05 02:50:48
【问题描述】:
我正在尝试在基于 android、iOS 和 Windows 平台的 ionic v1 框架应用程序中使用 Bing 地图 API。
我在正确绘制的 Bing 地图中遇到问题,但 放大、缩小、将地图类型从空中更改为道路以及获取当前位置这些按钮不起作用。我有适当的 API访问地图的关键。我什至尝试在浏览器上执行 ionic serve,但没有任何帮助。
我遵循了以下链接中的代码: https://github.com/eppineda/ionic.bing-map-demo
我还更改了 index.html 页面中 bing 地图的 JS src 文件: src='http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0'
到
src='http://www.bing.com/api/maps/mapcontrol'
我已更改参考 Microsoft 文档页面的 src 文件如下: http://www.bing.com/api/maps/sdkrelease/mapcontrol/isdk#loadMapAsync+HTML
问题可以在链接中看到 - http://plnkr.co/edit/NO5eLxogOyPHsiXzzpaQ?p=preview
$scope.init = function () {
console.log('Map init');
var mapOptions = {
credentials: '',
mapTypeId: Microsoft.Maps.MapTypeId.road,
center: new Microsoft.Maps.Location(51.5033640, -0.1276250),
zoom: 15,
// showLocateMeButton: false,
// // NavigationBarMode: "default",
// // NavigationBarOrientation: "vertical",
// showZoomButtons: false,
// ShowNavigationBar: false
showDashboard: true
// // showMapTypeSelector : true
// // showMapTypeSelector: false
// navigationBarMode: Microsoft.Maps.NavigationBarMode.compact
};
map = new Microsoft.Maps.Map(document.getElementById('divMap'), mapOptions);
console.log(map);
};
请帮我解决这个问题。这对解决方案非常有帮助。提前致谢。
【问题讨论】:
-
您能否提供更多信息。您所说的新地图 URL 中没有回调参数,因此与您指向的异步示例不一致。地图正在加载,您可以看到导航栏吗?问题主要是与地图交互吗?平移有效吗?你能提供任何代码吗?
-
当我在 ionic 上运行它时,一旦调用 deviceready 函数,我就会使用控制器初始化地图。我能够看到带有位置的导航栏,放大和缩小按钮,但这些按钮不起作用。
-
下面是我的控制器代码: $scope.init = function () { console.log('Map init'); var mapOptions = { credentials: 'my api key here', mapTypeId: Microsoft.Maps.MapTypeId.road, center: new Microsoft.Maps.Location(51.5033640, -0.1276250), zoom: 15 } map = new Microsoft.Maps.Map (document.getElementById('divMap'), mapOptions); };
-
您可以通过触摸/捏合移动地图吗?
-
是的,我可以缩放和平移地图。
标签: javascript angularjs cordova ionic-framework bing-maps