如何获取用户输入的名称并在edittext中搜索相应位置

时间:2012-04-18 12:04:08

标签: android google-maps

我可以将Google地图放在我的Android手机中。我把谷歌地图的搜索选项。如果用户给出位置并单击按钮搜索意味着它在谷歌地图中找到位置。现在我想在用户在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);

            }

按钮搜索点击表示它也显示位置。我想根据编辑文本中的用户搜索显示位置

1 个答案:

答案 0 :(得分:0)

使用以下代码接受来自用户的输入和地图上的搜索位置。

          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();
            }

需要进行一些更改