12

Googlemap v2 で緯度と経度を取得しようとしています。コードを使用して mapragment オブジェクトの onclick リスナーを設定しました。

 map.setOnMapClickListener(new OnMapClickListener() {

    @Override
    public void onMapClick(LatLng latln) {
        // TODO Auto-generated method stub


        String s=latln.toString();

        Log.w("dsfdsf",""+s);

    }
});

緯度と経度の座標を lat/lng の形式で提供します: (xx.xxxxxx,yy.yyyyy) 緯度と経度のデータを取得するには正確な方法が必要です.分割を使用してデータを解析し、座標を取得したくありません..

4

5 に答える 5

34

これは、 Google Maps API リファレンスで簡単に見つけることができます。

公開最終クラス LatLng

公共最終ダブルラチチュード

緯度 (度単位)。この値の範囲は [-90, 90] です。

公開最終二重経度

経度 (度単位)。この値の範囲は [-180, 180) です。

したがって、あなたの例では、次のように呼び出す必要があります。

double lat = latlng.latitude;
double lng = latlng.longitude;
于 2013-03-07T07:47:25.737 に答える
1
var res = results1[key][key1].toString().split("(");
console.log(" latlong::"+res);
var res2= res[1].split(",");
console.log(" latlong::"+res2);
latlongFrom[0]=res2[0];
console.log(" latlong::"+latlongFrom[0]);
var res3=res2[1].split(")");
console.log(" latlong::"+res3[0]);
latlongFrom[1]=res3[0];
console.log(" latlong::"+latlongFrom[1]);

これが私がやったことです。res には (緯度、経度) の値が含まれます。

于 2014-04-02T13:20:41.833 に答える
0

緯度と経度を取得するには、2 つの double 変数を宣言する必要があります。

map.setOnMapClickListener(new OnMapClickListener() {

    @Override
    public void onMapClick(LatLng latln) {
        double latitude, longitude;
        latitude(latln.latitude);
        longitude(latln.longitude);

    }
});
于 2016-09-20T22:22:32.740 に答える
-1

これは Android ソリューション用です

public void onMapClick(LatLng latln) {
    String s = latln.toString();
    String[] latLng = s.substring(10, s.length() - 1).split(",");
    String sLat = latLng[0];
    String sLng = latLng[1];
    Toast.makeText(MapsActivity.this, "Latitude is: "+sLat+", Longtitude is: "+sLng, Toast.LENGTH_LONG).show();
}
于 2016-09-19T13:51:03.517 に答える