Android百度地图SDK版本:5.2
1.创建并在项目中配置好AK;
2.Application中初始化地图组件:SDKInitializer.initialize(mContext);
3.自己页面中使用如下:

/** * 考勤详细页 * Created by WnsnailYang on 2014/7/7. */@EActivity(R.layout.activity_attendance_detail)public class AttendanceDetailActivity extends BaseActivity {    @Extra("attendanceInfoModel")    AttendanceInfoModel attendanceInfoModel;    @ViewById(R.id.header_layout)    BaseHeadBar header_layout;//头部标题    @ViewById(R.id.map_layout)    RelativeLayout mapView_layout;    @ViewById(R.id.tv_no_loc)    TextView tv_no_loc;    @ViewById(R.id.attendance_detail_grid_photo)    NoScrollGridView photoGrid;//相片缩略图GridView    @ViewById(R.id.attendance_detail_tv_type)    TextView tv_type;    @ViewById(R.id.attendance_detail_tv_time)    TextView tv_time; //定位    @ViewById(R.id.bmapView)    MapView mMapView;    //地图    private BaiduMap mBaiduMap;    private LatLng mLatLng;    private BitmapDescriptor mBitmapDescriptor;    //图片    private ArrayList photosList = new ArrayList();//照片URL集合    private PhotoGridAdapter photoGridAdapter;//相片GridView适配器    @AfterViews    void init() {        //在使用SDK各组件之前初始化context信息,传入ApplicationContext        header_layout.setMidTitle(getString(R.string.attendance_detail)); //设置标题        tv_type.setText(attendanceInfoModel.placeName);        tv_time.setText(attendanceInfoModel.updateTime);        initPhoto();        initMap();    }    private void initPhoto() {        photosList = attendanceInfoModel.picList;        if (BaseUtils.listIsNullOrEmpty(photosList)) {            return;        }        //设置图片浏览        photoGridAdapter = new PhotoGridAdapter(this);        photoGridAdapter.setPhotosList(photosList);        photoGridAdapter.setDisplayDelImage(false);        photoGrid.setAdapter(photoGridAdapter);        photoGrid.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                AppUtils.imageBrower(AttendanceDetailActivity.this, position, photosList);            }        });        photoGridAdapter.notifyDataSetChanged();    }    /**     * 初始化地图设置,添加标注信息     */    private void initMap() {        mBaiduMap = mMapView.getMap();        mLatLng = getLatLng();        if (mLatLng == null) {            tv_no_loc.setVisibility(View.VISIBLE);            mMapView.setVisibility(View.GONE);            return;        }        setCenterMap();//首先设置中心点        addOverlay();//添加标注        addInfoWindow();//添加覆盖文字    }    /**     * 添加覆盖文字     */    private void addInfoWindow() {        View view = getLayoutInflater().inflate(R.layout.map_popview_child, null);        TextView textView = (TextView) view.findViewById(R.id.titlename);        textView.setText(attendanceInfoModel.address);        InfoWindow.OnInfoWindowClickListener listener = new InfoWindow.OnInfoWindowClickListener() {            @Override            public void onInfoWindowClick() {                mBaiduMap.hideInfoWindow();            }        };        // 创建InfoWindow        InfoWindow mInfoWindow = new InfoWindow(view, mLatLng, 0);        // 显示InfoWindow        mBaiduMap.showInfoWindow(mInfoWindow);    }    /**     * 添加标注     */    private void addOverlay() {        //这里以后可以做成动画效果//        ArrayList giflist = new ArrayList();//        giflist.add(BitmapDescriptorFactory.fromResource(R.drawable.ico_location_black));//        giflist.add(BitmapDescriptorFactory.fromResource(R.drawable.ico_location_arrow));        mBitmapDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.ico_location_arrow);        OverlayOptions options = new MarkerOptions().position(mLatLng).icon(mBitmapDescriptor).zIndex(1).draggable(true);//设置:坐标-图标-z轴索引-可拖拽        mBaiduMap.addOverlay(options);    }    /**     * 设置中心点     */    private void setCenterMap() {        //定义地图状态        MapStatus mMapStatus = new MapStatus.Builder().target(mLatLng).zoom(18).build();        //定义MapStatusUpdate对象,以便描述地图状态将要发生的变化        MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);        //改变地图状态        mBaiduMap.setMapStatus(mMapStatusUpdate);    }    private LatLng getLatLng() {        double logitude = 113.15;        double latitude = 23.06;        //定义文字所显示的坐标点        if (!TextUtils.isEmpty(attendanceInfoModel.longitude)) {            logitude = Double.parseDouble(attendanceInfoModel.longitude);        } else {            return null;        }        if (!TextUtils.isEmpty(attendanceInfoModel.latitude)) {            latitude = Double.parseDouble(attendanceInfoModel.latitude);        } else {            return null;        }        return new LatLng(latitude, logitude);    }    @Override    public void onDestroy() {        super.onDestroy();        //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理        mMapView.onDestroy();    }    @Override    protected void onResume() {        super.onResume();        //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理        mMapView.onResume();    }    @Override    protected void onPause() {        super.onPause();        //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理        mMapView.onPause();    }}


更多相关文章

  1. Android 四大组件之 Activity(1)--生命周期
  2. android地图定位
  3. 2010.12.10(2)——— android 使用地图
  4. Android --- Activity生命周期
  5. Android开发:Activity初始化时屏蔽EditText的自动获取焦点的事件
  6. android用户界面-组件Widget-地图视图MapView
  7. 百度地图2.1获取密钥配置的Android签名证书的sha1值
  8. android 百度地图3.0+常用操作

随机推荐

  1. [Android] 监听wifi状态
  2. PointerLocationView 源码分析
  3. android notification点击与移除监听
  4. android仿苹果Iphone桌面源码
  5. Android推送通知
  6. android加载.swf flash文件
  7. Android(安卓)设置铃声
  8. Android漂亮的Help提示框
  9. android之网络请求框架OKhttp、原生http
  10. android通用JSON解析