百度地图根据经纬度获取地址

查询地址要内部实现MKSearchListener接口

 

  1. Java代码  
  2.       
  3. public class SearchListener implements MKSearchListener {      
  4.     /**       
  5.      * 根据经纬度搜索地址信息结果       
  6.      *         
  7.      * @param result       
  8.      *          搜索结果       
  9.      * @param iError       
  10.      *          错误号(0表示正确返回)       
  11.      */        
  12.     @Override        
  13.     public void onGetAddrResult(MKAddrInfo result, int iError)       {         
  14.     if (result == null)           {         
  15.         String str = String.format("错误号:%d", iError);         
  16.         Toast.makeText(mContext, str, Toast.LENGTH_LONG).show();         
  17.         return;         
  18.     }         
  19.     StringBuffer sb = new StringBuffer();         
  20.     // 经纬度所对应的位置         
  21.     sb.append(result.strAddr);         
  22.     Log.d("debug""address--==>"+sb.toString());      
  23.     }         
  24.         
  25.     /**       
  26.      * 驾车路线搜索结果       
  27.      *         
  28.      * @param result 搜索结果       
  29.      * @param iError 错误号(0表示正确返回)       
  30.      */        
  31.     @Override        
  32.     public void onGetDrivingRouteResult(MKDrivingRouteResult result, int iError)         
  33.     {         
  34.     }         
  35.         
  36.     /**       
  37.      * POI搜索结果(范围检索、城市POI检索、周边检索)       
  38.      *         
  39.      * @param result搜索结果       
  40.      * @param type       
  41.      *          返回结果类型(11,12,21:poi列表 7:城市列表)       
  42.      * @param iError       
  43.      *          错误号(0表示正确返回)       
  44.      */        
  45.     @Override        
  46.     public void onGetPoiResult(MKPoiResult result, int type, int iError)         
  47.     {         
  48.     }         
  49.         
  50.     /**       
  51.      * 公交换乘路线搜索结果       
  52.      *         
  53.      * @param result       
  54.      *          搜索结果       
  55.      * @param iError       
  56.      *          错误号(0表示正确返回)       
  57.      */        
  58.     @Override        
  59.     public void onGetTransitRouteResult(MKTransitRouteResult result, int iError)         
  60.     {         
  61.     }         
  62.         
  63.     /**       
  64.      * 步行路线搜索结果       
  65.      *         
  66.      * @param result       
  67.      *          搜索结果       
  68.      * @param iError       
  69.      *          错误号(0表示正确返回)       
  70.      */        
  71.     @Override        
  72.     public void onGetWalkingRouteResult(MKWalkingRouteResult result, int iError)         
  73.     {         
  74.     }         
  75. }    

在初始化MKSearch之前,要先初始化BMapManager

 

  1. Java代码  
  2.       
  3.     // 定义搜索服务类            
  4.    private MKSearch mMKSearch;           
  5.           
  6. // 初始化MKSearch            
  7.        mMKSearch = new MKSearch();           
  8.        mMKSearch.init(application.mapManager, new SearchListener());           
  9.           
  10.        mMKSearch.reverseGeocode(new GeoPoint((int) (latitude * 1e6), (int) (longitude * 1e6)));    

 

posted @ 2012-10-30 13:57  疯子FK  阅读(1124)  评论(0编辑  收藏  举报