2015-10-04 108 views
-1

我希望獲得標記位置後拖動它。使用AppInventor通過setWebViewString函數從Java Script獲取位置。標記的地圖和拖動工作正常。但AppInventor上的App沒有從WebViewer接收到位置,WebViewString沒有內容。AppInventor - 從Google地圖獲取標記位置

我想這個問題是在這部分代碼:

google.maps.event.addListener(marker, 'dragend', function() { 
    windowAppInventor.setWebViewString(marker.getPosition()); 
    }); 

請,可有人審查?

<!DOCTYPE html> 
<html> 
<head> 
<script 
src="http://maps.googleapis.com/maps/api/js"> 
</script> 

<script> 

var myCenter=new google.maps.LatLng(51.508742,-0.120850); 

function initialize() 
{ 
    var mapProp = { 
    center: myCenter, 
    zoom:15, 
    panControl:false, 
    zoomControl:true, 
    mapTypeControl:false, 
    scaleControl:false, 
    streetViewControl:false, 
    overviewMapControl:false, 
    rotateControl:false,  
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    var map = new google.maps.Map(document.getElementById("googleMap"),mapProp); 

var marker=new google.maps.Marker({ 
    position:myCenter, 
    draggable:true, 
    }); 

marker.setMap(map); 

} 
google.maps.event.addDomListener(window, 'load', initialize); 

google.maps.event.addListener(marker, 'dragend', function() { 
    windowAppInventor.setWebViewString(marker.getPosition()); 
    }); 

</script> 
</head> 

<body> 
<div id="googleMap" style="width:500px;height:380px;margin:-8px"></div> 
</body> 
</html> 

回答

0

按照更正後的代碼:

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
<script 
 
src="http://maps.googleapis.com/maps/api/js"> 
 
</script> 
 

 
<script> 
 

 
var myCenter=new google.maps.LatLng(51.508742,-0.120850); 
 

 
function initialize() 
 
{ 
 
    var mapProp = { 
 
    center: myCenter, 
 
    zoom:15, 
 
    panControl:false, 
 
    zoomControl:true, 
 
    mapTypeControl:false, 
 
    scaleControl:false, 
 
    streetViewControl:false, 
 
    overviewMapControl:false, 
 
    rotateControl:false,  
 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
 
    }; 
 
    var map = new google.maps.Map(document.getElementById("googleMap"),mapProp); 
 

 
\t var marker=new google.maps.Marker({ 
 
\t position:myCenter, 
 
\t draggable:true, 
 
\t }); 
 

 
\t marker.setMap(map); 
 
\t 
 
\t google.maps.event.addListener(marker, 'dragend', function(event) {  
 
\t \t window.AppInventor.setWebViewString("Lat: " + marker.getPosition().lat().toFixed(6) + " Long: " + marker.getPosition().lng().toFixed(6)); 
 
\t }); 
 

 
} 
 
google.maps.event.addDomListener(window, 'load', initialize); 
 

 
</script> 
 
</head> 
 

 
<body> 
 
<div id="googleMap" style="width:500px;height:380px;margin:-8px"></div> 
 
</body> 
 
</html>

相關問題