以下是思考...我有一个源自Activity的基本活动,在我的一个派生活动中,我需要显示一个包含我当前位置的谷歌地图。如果我没有使用此基本活动,我将从地图活动中获取我的活动并使用com.google.android.maps.MapView地图控件。但是,我不能,我不能......
所以我试图用地图活动派生我的基类,但即使这样它也不起作用我仍然有相同的异常
Android.Views.InflateException:错误导致类com.google.android.maps.MapView
所以,我想在网页视图中显示地图,但我只是想显示地图,没有谷歌工具栏等等...我在网上找到一种方法去做,我发现了一些链接,其中一个是this,我很喜欢,但我不知道如何使用JavaScript。有人能帮助我吗?
答案 0 :(得分:0)
因此,您在样本中加载WebView的URL很可能是:http://gmaps-samples.googlecode.com/svn/trunk/articles-android-webmap/simple-android-map.html
此html页面包含显示在您链接到的示例底部的JavaScript。您希望将其作为资产或服务器存储在应用程序中,以便轻松修改。
该HTML的来源是:
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Simple V3 Map for Android</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript">
var map;
function initialize() {
var latitude = 0;
var longitude = 0;
if (window.android){
latitude = window.android.getLatitude();
longitude = window.android.getLongitude();
}
var myLatlng = new google.maps.LatLng(latitude,longitude);
var myOptions = {
zoom: 8,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
function centerAt(latitude, longitude){
myLatlng = new google.maps.LatLng(latitude,longitude);
map.panTo(myLatlng);
}
</script>
</head>
<body style="margin:0px; padding:0px;" onload="initialize()">
<div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>
由于这使用了普通的Google Maps JavaScript API,因此可以通过将其添加到myOptions
数组来轻松禁用defaultUI:
disableDefaultUI: true,
就像文档在这里说的那样:https://developers.google.com/maps/documentation/javascript/controls#DisablingDefaults