高德地图获取当前屏幕中心点的经纬度


公司有个需求就是要随着屏幕的改变而加载附近的商户信息.

那么高德地图获取当前屏幕中心点的经纬度呢?


核心方法:aMap.setOnCameraChangeListener(this);


实现接口:

@Override
public void onCameraChange(CameraPosition position) {
LatLng target = position.target;
System.out.println(target.latitude + "jinjin------" + target.longitude);
}


[java] view plain copy
  1. <span style="font-size:18px;">package com.amap.map2d.demo.basic;  
  2.    
  3.   
  4. import android.app.Activity;  
  5. import android.os.Bundle;  
  6. import android.util.DisplayMetrics;  
  7.   
  8. import com.amap.api.location.core.GeoPoint;  
  9. import com.amap.api.maps2d.AMap;  
  10. import com.amap.api.maps2d.AMap.OnCameraChangeListener;  
  11. import com.amap.api.maps2d.MapView;  
  12. import com.amap.api.maps2d.model.CameraPosition;  
  13. import com.amap.api.maps2d.model.LatLng;  
  14. import com.amap.map2d.demo.R;  
  15.    
  16.   
  17. /** 
  18.  * AMapV1地图中介绍如何显示一个基本地图 
  19.  */  
  20. public class BasicMapActivity extends Activity implements OnCameraChangeListener {  
  21.     private MapView mapView;  
  22.     private AMap aMap;  
  23.   
  24.     @Override  
  25.     protected void onCreate(Bundle savedInstanceState) {  
  26.         super.onCreate(savedInstanceState);  
  27.         setContentView(R.layout.basicmap_activity);  
  28.         mapView = (MapView) findViewById(R.id.map);  
  29.         mapView.onCreate(savedInstanceState);// 此方法必须重写  
  30.           
  31.         init();  
  32.           
  33.         aMap.setOnCameraChangeListener(this);  
  34.     }  
  35.   
  36.       
  37.       
  38.     /** 
  39.      * 初始化AMap对象 
  40.      */  
  41.     private void init() {  
  42.         if (aMap == null) {  
  43.             aMap = mapView.getMap();  
  44.         }  
  45.     }  
  46.   
  47.     /** 
  48.      * 方法必须重写 
  49.      */  
  50.     @Override  
  51.     protected void onResume() {  
  52.         super.onResume();  
  53.         mapView.onResume();  
  54.     }  
  55.   
  56.     /** 
  57.      * 方法必须重写 
  58.      */  
  59.     @Override  
  60.     protected void onPause() {  
  61.         super.onPause();  
  62.         mapView.onPause();  
  63.     }  
  64.   
  65.     /** 
  66.      * 方法必须重写 
  67.      */  
  68.     @Override  
  69.     protected void onSaveInstanceState(Bundle outState) {  
  70.         super.onSaveInstanceState(outState);  
  71.         mapView.onSaveInstanceState(outState);  
  72.     }  
  73.   
  74.     /** 
  75.      * 方法必须重写 
  76.      */  
  77.     @Override  
  78.     protected void onDestroy() {  
  79.         super.onDestroy();  
  80.         mapView.onDestroy();  
  81.     }  
  82.   
  83.   
  84.   
  85.     @Override  
  86.     public void onCameraChange(CameraPosition position) {  
  87.         LatLng target = position.target;  
  88.         System.out.println(target.latitude + "jinjin------" + target.longitude);  
  89.     }  
  90.   
  91.   
  92.   
  93.     @Override  
  94.     public void onCameraChangeFinish(CameraPosition position) {  
  95.         // TODO Auto-generated method stub  
  96.           
  97.     }  
  98.   
  99. }  
  100. </span>  



结果展示

猜你喜欢

转载自blog.csdn.net/qq_25749749/article/details/79868002