1

我可以将谷歌地图放在我的安卓手机中。我把谷歌地图的搜索选项。如果用户给出位置并单击按钮搜索意味着它在谷歌地图中找到位置。现在我想在用户在Edittext中给出位置名称时显示相对位置..请给我任何参考.....

   i try this code of button click
     if (v == search) {
        Geocoder geo = new Geocoder(getApplicationContext(),
                Locale.getDefault());
        try {
            List<Address> addresses = geo.getFromLocationName(location
                    .getText().toString(), 5);
            if (addresses.size() > 0) {
                GeoPoint p = new GeoPoint((int) (addresses.get(0)
                        .getLatitude() * 1E6), (int) (addresses.get(0)
                        .getLongitude() * 1E6));

                controller.animateTo(p);
                controller.setZoom(12);
                MapOverlay mapOverlay = new MapOverlay(getApplicationContext(),p);
                List<Overlay> lisOverlays = view.getOverlays();
                lisOverlays.clear();
                lisOverlays.add(mapOverlay);

            }

按钮搜索单击意味着它也显示位置。我想根据用户搜索在编辑文本中显示位置

4

1 回答 1

1

使用以下代码接受用户输入并在地图上搜索位置。

          String value = editText1.getText().toString();
          // Do something with value!
          Log.d("value", value);

          Geocoder geoCoder = new Geocoder(getBaseContext(), Locale.getDefault());    
            try {
                List<Address> addresses = geoCoder.getFromLocationName(
                    value, 5);
                String add = "";
                if (addresses.size() > 0) {
                    p = new GeoPoint(
                            (int) (addresses.get(0).getLatitude() * 1E6), 
                            (int) (addresses.get(0).getLongitude() * 1E6));
                    mc.animateTo(p);    
                    mapView.invalidate();
                }    
            } catch (IOException e) {
                e.printStackTrace();
            }

需要进行一些更改

于 2012-04-18T12:08:24.747 回答