I'm developing an Android application and using GoogleMaps API v2. This application works so far but I want search in the map with a path:
Screenshot :
my codes:
Position_mark = new LatLng(35.7008, 51.437);
map.moveCamera(CameraUpdateFactory.newLatLngZoom(Position_mark, 15));
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
map.setOnMapClickListener(this);
map.setOnMapLongClickListener(this);
map.setOnMarkerDragListener(this);
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//Used to put dark icons on light action bar
mGoItem = menu.add(0, Delete_ITEM_ID, 0, null);
mGoItem.setIcon(R.drawable.ic_launcher)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
SearchView searchView =
new SearchView(getSupportActionBar().getThemedContext());
searchView.setQueryHint("Search for Places…");
searchView.setIconified(false);
menu.add("Search")
.setIcon(R.drawable.abs__ic_search)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String newText) {
return true;
}
/**
* Called when the query text is changed by the user.
* @param newText the new content of the query text field.
* @return false if the SearchView should perform the
* default action of showing any suggestions if available,
* true if the action was handled by the listener.
*/
@Override
public boolean onQueryTextChange(String newText) {
Toast.makeText(getApplicationContext(), newText, 1).show();
return true;
}
});
return true;
}
@Override
public void onMapClick(LatLng point) {
// TODO Auto-generated method stub
// tvLocInfo.setText(point.toString());
map.animateCamera(CameraUpdateFactory.newLatLng(point));
map.clear();
Marker Kiel = map.addMarker(new MarkerOptions()
.position(point)
.title("Kiel")
.snippet("Kiel is cool").draggable(true)
.icon(BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher)));
}
I use ActionBarSherlock
and SearchView
for searching. How to search in GoogleMaps API with path not latitute or longitude?
You can use geocoding to search or see this nice tutorial which uses json parsing GoogleMaps.