根据经纬度定位百度地图(带图片的)

1.首先,去百度地图定位sdk,获取key。可参考 http://blog.csdn.net/qq_28759359/article/details/52678043


2.导入下载的jar包放到libs


文章后面会给出下载地址


3.在AndroidManifest中添加

<!-- 百度地图 -->
<meta-data
    android:name="com.baidu.lbsapi.API_KEY"
    android:value="你申请的key" />
 
4.新建Activity,我命名TestMapActivity ,
布局中添加
<com.baidu.mapapi.map.MapView
    android:id="@+id/bmapView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true" />

Activity中代码
 
public class TestMapActivity extends Activity {

    BaiduMap mBaiduMap = null;
    MapView mMapView = null;
    private InfoWindow mInfoWindow;
    private Marker mMarkerA;
    // 初始化全局 bitmap 信息,不用时及时 recycle
    BitmapDescriptor bdA = BitmapDescriptorFactory
            .fromResource(R.mipmap.mapindex);//mapindex图片你自己定义


    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);


        setContentView(R.layout.activity_test_map);
        // 121.76 31.05  这个坐标可以是你其他地方获得
        String mlat = "121.76";
        String mLon = "31.05";
        Double mlat1 = Double.parseDouble(mlat);
        Double mLon1 = Double.parseDouble(mLon);
        Log.i("ll", "mLat=" + mlat + "mLon=" + mLon);
        //初始化地图
        CharSequence titleLable = "搜索结果";
        setTitle(titleLable);

        // 地图初始化
        mMapView = (MapView) findViewById(R.id.bmapView);
        mBaiduMap = mMapView.getMap();

        //设定中心点坐标
        LatLng cenpt = new LatLng(mLon1, mlat1);
        //定义地图状态
        MapStatus mMapStatus = new MapStatus.Builder()
                .target(cenpt)
                .zoom(18)
                .build();

        OverlayOptions ooA = new MarkerOptions().position(cenpt).icon(bdA)
                .zIndex(9).draggable(true);
        mMarkerA = (Marker) (mBaiduMap.addOverlay(ooA));

        MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);
        //改变地图状态
        mBaiduMap.setMapStatus(mMapStatusUpdate);

        mBaiduMap.setOnMarkerDragListener(new OnMarkerDragListener() {
            public void onMarkerDrag(Marker marker) {
            }

            public void onMarkerDragEnd(Marker marker) {
            }

            public void onMarkerDragStart(Marker marker) {
            }
        });
    }

    @Override
    protected void onPause() {
        // MapView的生命周期与Activity同步,当activity挂起时需调用MapView.onPause()
        mMapView.onPause();
        super.onPause();
    }

    @Override
    protected void onResume() {
        // MapView的生命周期与Activity同步,当activity恢复时需调用MapView.onResume()
        mMapView.onResume();
        super.onResume();
    }
//不能执行回收操作,因为有多次请求
// @Override
// protected void onDestroy() {
//    // MapView的生命周期与Activity同步,当activity销毁时需调用MapView.destroy()
//    mMapView.onDestroy();
//    super.onDestroy();
//    // 回收 bitmap 资源
//    bdA.recycle();
// }
}
OK,可运行看结果
jar包下载地址,可上官网下载最新版本
http://download.csdn.net/detail/qq_28759359/9677378


  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值