从片段中的文本搜索标记

时间:2013-06-12 20:59:33

标签: android google-maps textbox

我需要在我的应用程序中添加一个文本框,我在其中键入地址(街道,城市),然后应用程序将显示符合此条件的标记。任何想法或教程?我的标记有用片段写的地址。抱歉我的英语不好。

2 个答案:

答案 0 :(得分:3)

首先将文本框中的地址传递给下面的给定方法,该方法将为您提供该地址的纬度和经度,通过此纬度和经度,您可以将标记放在地图上。

 //----Coding to get latitude and longitude from address----

     private void searchFromLocationName(String name){
         try {

             Geocoder myGeocoder = new Geocoder(this);
          List<Address> result = myGeocoder.getFromLocationName(name, 5);

          if ((result == null)||(result.isEmpty()))
          {
           Toast.makeText(MapsActivity.this, "Sorry!No matches were found",Toast.LENGTH_LONG).show();
          }
          else{
           String stringResult = "";
           for (int i =0; i < result.size(); i++){

            stringResult += "latitude: " + result.get(i).getLatitude() + "\n"
              + "longitude: " + result.get(i).getLongitude() + "\n";

           }

          }


         } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();

         }
        }

并在代码段上显示地址: -

overlayItemsList.add(new OverlayItem(geoPoint, title, address));

答案 1 :(得分:0)

Marker放在ArrayList<Marker>中,然后循环播放它们并更改可见性。

for (Marker marker : allMarkers) {
    String snippet = marker.getSnippet();
    boolean match = snippet.contains(myText);
    marker.setVisible(match);
}