0

アプリケーションにジオポイントを使用してGoogleマップに自分の場所を表示させようとしていますが、電話でアプリケーションを開くと常に同じ場所が開きます。これは、コードでテストの初期値として追加した値ですコンパイラ。自分の場所を表示するにはどうすればよいですか (自分の場所に応じて緯度と経度を変更します)。

コードは次のとおりです。

public class AndroidGoogleMapsActivity は MapActivity を拡張します {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Displaying Zooming controls
    MapView mapView = (MapView) findViewById(R.id.mapView);
    mapView.setBuiltInZoomControls(true);

    /**
     * Changing Map Type
     * */
     mapView.setSatellite(true); // Satellite View
    // mapView.setStreetView(true); // Street View
     mapView.setTraffic(true); // Traffic view

    /**
     * showing location by Latitude and Longitude
     * */        
    MapController mc = mapView.getController();
    double lat = Double.parseDouble("31.894178");
    double lon = Double.parseDouble("35.872694");
    GeoPoint geoPoint = new GeoPoint((int)(lat * 1E6), (int)(lon * 1E6));
    mc.animateTo(geoPoint);
    mc.setZoom(15);
    mapView.invalidate(); 



    /**
     * Placing Marker
     * */
    List<Overlay> mapOverlays = mapView.getOverlays();
    Drawable drawable = this.getResources().getDrawable(R.drawable.mark_red);
    AddItemizedOverlay itemizedOverlay = 
         new AddItemizedOverlay(drawable, this);


    OverlayItem overlayitem = new OverlayItem(geoPoint, "Hello", "Sample Overlay item");

    itemizedOverlay.addOverlay(overlayitem);
    mapOverlays.add(itemizedOverlay);

}

@Override
protected boolean isRouteDisplayed() {
    return false;
}

}

4

2 に答える 2

0

実際のGPSに電話をかけることはないため、プログラムしたGPSに戻ります。これは他の場所でも十分に文書化されていますが、開始するのに適した場所です:http: //about-android.blogspot.com/2010 / 04 / find-current-location-in-android-gps.html

于 2012-05-23T15:45:48.667 に答える
0

位置検出を参照してください。それはそれをafaikする簡単な方法であり、それは私のために働いた。乾杯!

于 2012-05-23T18:41:08.297 に答える