2011-08-31 123 views
1

我有一個谷歌地圖應用程序,需要一個點的數組,並把它們放在地圖上。我想添加隨着用戶移動而移動的小藍點。我還沒有找到關於如何做到這一點的任何教程。這裏是什麼,我需要我怎樣才能顯示我的位置谷歌地圖android

enter image description here

注意,藍點還具有脈動藍色環的例子,它跟着你,當你開始走路。

感謝

編輯我已經找到了功能drawMyLocation,但我不知道在哪裏把它。這是我的地圖活動和我的逐項疊加(我用一個氣球逐項疊加創建彈出的對話框效果)

  MapView mapView = (MapView) findViewById(R.id.mapView); 
      List<Overlay> mapOverlays = mapView.getOverlays(); 

      for (int i = 0; i < mList.size(); i++) { 
       Drawable drawable = null; 
       for (int k = 0; k < ImTracking.pList.size(); k++) { 
        if (mList.get(i).getId() 
          .equals(ImTracking.pList.get(k).getid())) { 
         mList.get(i).setName(
           ImTracking.pList.get(k).getName()); 
         if (mList.get(i).getMostRecent()) { 
          drawable = Maps.this.getResources() 
            .getDrawable(
              pincolorstar[ImTracking.pList 
                .get(k).getPosition()]); 

         } else { 
          drawable = Maps.this 
            .getResources() 
            .getDrawable(
              ImTracking.pincolors[ImTracking.pList 
                .get(k).getPosition()]); 
         } 
        } 
       } 

       HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(
         drawable, mapView); 
       GeoPoint myPoint = new GeoPoint((int) (mList.get(i) 
         .getLatitude() * 1E6), (int) (mList.get(i) 
         .getLongitude() * 1E6)); 
       OverlayItem overlayitem = new OverlayItem(myPoint, mList 
         .get(i).getName(), mList.get(i).getTime()); 
       itemizedoverlay.addOverlay(overlayitem); 
       mapOverlays.add(itemizedoverlay); 
      } 

上面部分將所有的引腳映射,接下來的部分是我嘗試添加mylocation覆蓋

MyLocationOverlay myLocationOverlay=new MyLocationOverlay(Maps.this, mapView); 
       myLocationOverlay.enableMyLocation(); 
       mapOverlays.add(myLocationOverlay); 
       MapController mc = mapView.getController(); 
       mc.zoomToSpan(Math.abs(maxLat - minLat), 
         Math.abs(maxLon - minLon)); 

       mc.animateTo(new GeoPoint((maxLat + minLat)/2, 
         (maxLon + minLon)/2)); 

      } catch (Exception e) { 
       e.printStackTrace(); 
      } 

只是增加myLocationOverlay到mapOverlays不顯示藍點。

+0

檢查這個帖子:http://stackoverflow.com/questions/1513485/how - 我得到當前的GPS位置編程在Android我相信你可以找到你想要的任何東西! –

回答

6

您可能希望看到MyLocationOverlay,看看是否能適合您的要求

示例說明如下:


    List overlaysoverlays = mapView.getOverlays(); 
    // "this" refers to your activity 
    MyLocationOverlay myLocationOverlay = new MyLocationOverlay(this, mapView); 
    myLocationOverlay.enableMyLocation(); 
    overlays.add(myLocationOverlay); 
+0

我可以在哪裏擠擠MyLocationOverlay?在我的地圖類中,我已經擴展了MapActivity。 –

+0

MyLocation是添加到現有MapView的覆蓋圖 – momo

+1

我已經添加了示例代碼以使其更清晰 – momo

相關問題