百度地圖 Android SDK - 標註(Marker)的基本使用

來源:互聯網
上載者:User

百度地圖 Android SDK - 標註(Marker)的基本使用

標註(Marker)是開發人員最常使用的地圖覆蓋物志一,今天就來向大家介紹一些標註(Marker)的最基本使用方法!

實現目標:

1、構建基礎地圖頁面;

2、在地圖的中心點處添加 Marker;

3、實現 Marker 的點擊事件響應;

4、實現 Marker 的添加和靈活刪除;

為了實現以上目標,我們會分成以下若干步驟來進行。

第一步、建立工程,匯入百度地圖 Android SDK;

具體建立工程的方式(略)。本樣本主要是為了實現地圖及相關的覆蓋物功能,因此這裡我只使用 SDK 開發資源下載平台所提供的【基礎地圖】功能模組即可。

相應為:http://lbsyun.baidu.com/sdk/download

勾選:

選擇完成後,點擊開發包下載,將所下載開發包正確匯入開發工程。


第二步、申請開發人員秘鑰;

工程建立完成後,到 API 控制台,申請相應的開發秘鑰,為具體開發工作準備。

具體申請方式及注意事項,請參考:http://blog.csdn.net/callmesen/article/details/39523767 此處不再贅述。


<喎?http://www.bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+tdrI/bK9oaLQ3rjEIEFuZHJvaWRNYW5pZmVzdCDOxLz+o6zM7bzTv6q3osPY1L+6zcv50OjIqM/eo7s8L3A+CjxwPtTaIEFuZHJvaWRNYW5pZmVzdCDOxLz+1tCjrMztvNO/qreiw9jUv7rNy/nQ6Mioz96hozwvcD4KPHA+zO2807+qt6LD2NS/t73Kvcjnz8KjujwvcD4KPHA+PC9wPgo8cHJlIGNsYXNzPQ=="brush:java;"> 注意在 application 裡面。

添加要求的權限如下:

                          

第四步、建立基礎地圖;

在 xml 檔案中添加 mapview 控制項,如下所示:

    
在 java 代碼中初始化地圖 SDK,實現基礎地圖的展示:
//初始化地圖 SDKSDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main);//綁定XML中得 mapview 控制項mapView = (MapView) findViewById(R.id.bmapView);


第五步、擷取地圖中心點,並添加 Marker 對象;

實現的核心代碼如下:

baiduMap = mapView.getMap();LatLng latLng = baiduMap.getMapStatus().target;//準備 marker 的圖片BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.ic_launcher);//準備 marker option 添加 marker 使用markerOptions = new MarkerOptions().icon(bitmap).position(latLng);//擷取添加的 marker 這樣便於後續的操作marker = (Marker) baiduMap.addOverlay(markerOptions);

第六步、實現 Marker 的點擊事件響應;

利用 baidumap 對象的地圖監聽方法,實現針對 marker 的點擊響應,核心代碼如下:

//對 marker 添加點擊相應事件baiduMap.setOnMarkerClickListener(new OnMarkerClickListener() {@Overridepublic boolean onMarkerClick(Marker arg0) {// TODO Auto-generated method stubToast.makeText(getApplicationContext(), "Marker被點擊了!", Toast.LENGTH_SHORT).show();return false;}});

第七步、利用 Button 控制項,控制 Marker 的添加刪除;

這裡用 button 來控制在地圖上添加 或者 刪除一個 marker,首先在 xml 中添加一個 button 控制項:

    
在 java 代碼中添加這個 button 的點擊事件響應,核心代碼如下:

//按鈕控制添加刪除 buttonbutton.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubif(button.getText() == "添加Marker"){marker = (Marker) baiduMap.addOverlay(markerOptions);button.setText("刪除Marker");}else {marker.remove();button.setText("添加Marker");}}});

通過以上的操作,就可以實現相應的 marker 添加,marker 點擊響應,marker 刪除等操作。




聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.