地图例子

 

<HTML>
<HEAD>
<TITLE>bdk82924</TITLE>
 
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
<!--
a:link {
 text-decoration: none;
}
a:visited {
 text-decoration: none;
}
a:hover {
 text-decoration: none;
}
a:active {
 text-decoration: none;
}
-->
</style></HEAD>

<BODY topmargin="0" leftmargin="0">
<div id="maps" style="position:absolute; width:694px; height:530px; border:white solid 1px; left: 2px; top: 74px;">
</div>     
<div id="Layer1" style="position:absolute; left:182px; top:12px; width:62px; height:29px; z-index:1">
  <input type="button" name="Submit" value="按钮" onClick="searchMap()">
</div>
 
<div id="Layer2" style="position:absolute; left:15px; top:13px; width:157px; height:27px; z-index:2">
  <input name="searchName" type="text" id="searchName">
</div>
<script language="javascript" src="http://api.51ditu.com/js/search.js"></script>
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>
<script language="javascript">
var map,search;
function showPoint(searchResult)
{
if(searchResult.count>0)//如果存在搜索结果
 {
  map.clearOverLays();
  var poi=searchResult.searchPoints[0];//取出第一个搜索结果点
  var markerPoint=new LTPoint(poi.point[0]+40,poi.point[1]-130);//得到该点的坐标的LTPoint
  var point=new LTPoint(poi.point[0]+50,poi.point[1]-100);//得到该点的坐标的LTPoint
  map.centerAndZoom(point,0);
  var marker=new LTMarker(markerPoint);//向地图上添加一个标记
  map.addOverLay(marker);
  
  
  //var mapText=new LTMapText(marker);
  //mapText.setLabel("☆   <a href='http://bdk82924.iteye.com' target='_blank'>"+"露园小区"+"</a>   ☆");
  
  
  
  var mapText = new LTInfoWindow( point );
        mapText.setLabel( "☆     <a href='http://bdk82924.iteye.com' target='_blank'>"+"露园小区"+"</a>     ☆" ); 
  
  map.addOverLay(mapText);
  
  map.handleKeyboard(); //键盘操作支持
  map.handleMouseScroll();//鼠标滚轮支持
       
  
  var name=poi.name;//标记点击的时候弹出信息
  
 }

else

 {
  alert('地图暂时无此结果');
 }
}
map=new LTMaps("maps");
map.addControl(new LTSmallMapControl());
search=new LTLocalSearch(showPoint);
search.setCity('南京');
search.search('拓园');
 

function searchMap()
{
var name=searchName.value;
search.search(name);
 
map.removeOverLay(mapText); 
}
</script>
</BODY>
</HTML>

 

### Android 应用中集成高德地图示例 #### 初始化地图视图 为了初始化并展示高德地图,在 `Activity` 的 `onCreate()` 方法内获取 `MapView` 实例,并调用其生命周期方法来确保地图正常加载。 ```java @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mMapView = (MapView) findViewById(R.id.map); // 获取MapView实例 mMapView.onCreate(savedInstanceState); // 创建地图[^1] } ``` #### 设置地理编码查询功能 通过继承自 `AppCompatActivity` 并实现接口 `GeocodeSearch.OnGeocodeSearchListener` 可以为应用程序添加地址转换服务支持。这允许开发者根据输入的地名或坐标点进行地理位置搜索操作。 ```java public class AddrChangeActivity extends AppCompatActivity implements View.OnClickListener, GeocodeSearch.OnGeocodeSearchListener { private MapView mapView; @Override protected void onCreate(Bundle bundle){ ... new GeocodeSearch(this).getFromLocationNameAsyn(new GeoCodeQuery("天安门", "北京市")); // 地理位置转经纬度 ... } } ``` #### 处理定位更新事件 当用户的当前位置发生变化时,可以通过重写 `onLocationChanged()` 函数处理新的位置信息。此函数会在每次接收到新位置数据时被触发。 ```java @Override public void onLocationChanged(AMapLocation location) { if (location != null && location.getErrorCode() == 0) { LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude()); CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 17f); aMap.moveCamera(cameraUpdate); // 移动相机到指定地点 MarkerOptions markerOption = new MarkerOptions(); markerOption.position(latLng); markerOption.title("当前位置"); aMap.addMarker(markerOption); // 添加标记点表示当前所在的位置 } else { Log.e("AmapSample", "Error Code:" + location.getErrorCode() + ", Error Info:" + location.getErrorInfo()); } } ``` #### 响应标记点击事件 为了让用户能够交互式地查看特定地标的信息,可以为地图上的每一个 `Marker` 注册监听器。每当某个标志物被选中时就会触发相应的回调逻辑。 ```java aMap.setOnMarkerClickListener(new AMap.OnMarkerClickListener() { @Override public boolean onMarkerClick(Marker marker) { Toast.makeText(getApplicationContext(), "您选择了:" + marker.getTitle(), Toast.LENGTH_SHORT).show(); return true; // 返回true阻止默认行为 } }); ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值