私は Android アプリケーションを開発しており、GoogleMaps API v2 を使用しています。このアプリケーションはこれまでのところ機能しますが、パスを使用してマップ内を検索したい:
スクリーンショット:
私のコード:
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)));
}
検索にはActionBarSherlock
とを使っています。SearchView
緯度や経度ではないパスを使用してGoogleMaps APIで検索するには?