之前弄过google地图的api的,百度的也差不多。要把地址转化为经纬度,然后通过经纬度定位。google的api里有个
GClientGeocoder 类 有个方法geocoder.getLatLng(address,callback);但是百度地图api里的这个方法 geo.getPoint(address, callback, city);  还要个city城市参数,烦人不,难道我截取地址的前几位作为城市名?大家用百度地图api,有什么好的方法?更准确点的有些地址是前面没有才城市名的,比如中国人民解放军第三医院 那就扯了
BMap.LocalSearch()也要城市名,百度api就没有不要城市名的准确的把地名转化为经纬度的?一般房产或者旅游网站的 地图 根据地名设置中心点,给的地名也不一定有城市名吧,哪位知道是如何处理的。百度知道有提问,知道的去拿分啊!
http://zhidao.baidu.com/question/251687046.html

解决方案 »

  1.   

    搜索以后,重写onGetPoiResult()方法里的参数之一:MKPoiResult result下有个方法
    MKPoiInfo poiInfo = result.getPoi(0);   //假设搜到结果的第一个(参数0)就是你要的,一般都是
    GeoPoint p = poiInfo.pt  //返回了这个地点的GeoPoint,可就此进一步得到经纬度
    地点搜索方法是要设城市的,不过设了也不是搜不到别的城市下的地点,估计只是个优先的问题。