0

ユーザーに場所の住所を入力させ、gwtでGoogleマップを使用して場所を地図に表示し、その場所を他のサービスに使用しようとしています。gwt-map 3.8 を使用しています。オンラインの javadoc は、このクラスがどのように機能するかを説明するのにあまり役に立たず、オンラインで例を見つけることができません。誰にもアイデアはありますか?

これは私がこれまでに持っているものです:

private void geocode()
{

    final String addr = addressBox.getText().toUpperCase().trim();
        addressBox.setFocus(true);

    addressBox.setText("");

    Geocoder G = Geocoder.create();
    GeocoderRequest GReq = GeocoderRequest.create();
    GReq.setAddress(addr);

        // should this be just create or createarray? it won't let me use createarray
    GeocoderResult GResult = GeocoderResult.create();


com.google.maps.gwt.client.Geocoder.Callback gcallback = new Geocoder.Callback() {      

        @Override
                // i don't understand this handle part, the first parameter is not 
                //defined in the javadoc.  I looked around online and it seems to be a 
                //array of geocoder result but I can't make the array because it's a 
                //javascript object
        public void handle(GeocoderResult a[], GeocoderStatus b) {

}}};

お時間をいただきありがとうございます

4

1 に答える 1

0

あなたが探しているのはこれだと思います:

String address = address1 + "," + number + "," + address2 + "," + city;
        GeocoderRequest request = GeocoderRequest.create();
        request.setAddress(address);
        Geocoder geoCoder = Geocoder.create();
        geoCoder.geocode(request, new Geocoder.Callback() {

            @Override
            public void handle(JsArray<GeocoderResult> a, GeocoderStatus b) {
                if (b == GeocoderStatus.OK) {
                    GeocoderResult result = a.shift();
                    map.setCenter(result.getGeometry().getLocation());
                } else {
                    Window.alert("Aconteceu algo errado no google ao pegar este local, confira endereco");
                }
            }      
            });
于 2013-01-01T12:32:04.160 に答える