Agregar barra de herramientas de búsqueda sobre google map como en la aplicación nativa de Android

Quiero implementar la barra de herramientas de búsqueda como en la aplicación nativa de google maps. ¿Cómo puedo hacer esto? Puede ser que haya una manera nativa de implementar esta característica?

Instantánea de la aplicación google maps

Usted debe ir para el uso AutoSuggestEditext y dar efecto de fondo como google tienen y poner la imagen a la izquierda y la derecha por Relativelayout

Aquí está el ejemplo de Auto Sugerir para buscar en el lugar.

Auto completo

Espero que lo entienda.

Puede utilizar EditText o TextWatcher . EditText un botón EditText y un botón Buscar. Con este clic en el botón, que la ubicación de búsqueda.

Aquí está mi código en el botón de clic:

 button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { String g = searchview.getText().toString(); Geocoder geocoder = new Geocoder(getBaseContext()); List<Address> addresses = null; try { // Getting a maximum of 3 Address that matches the input // text addresses = geocoder.getFromLocationName(g, 3); if (addresses != null && !addresses.equals("")) search(addresses); } catch (Exception e) { } } }); 

Y aquí está el método de búsqueda

 protected void search(List<Address> addresses) { Address address = (Address) addresses.get(0); home_long = address.getLongitude(); home_lat = address.getLatitude(); latLng = new LatLng(address.getLatitude(), address.getLongitude()); addressText = String.format( "%s, %s", address.getMaxAddressLineIndex() > 0 ? address .getAddressLine(0) : "", address.getCountryName()); markerOptions = new MarkerOptions(); markerOptions.position(latLng); markerOptions.title(addressText); map1.clear(); map1.addMarker(markerOptions); map1.moveCamera(CameraUpdateFactory.newLatLng(latLng)); map1.animateCamera(CameraUpdateFactory.zoomTo(15)); locationTv.setText("Latitude:" + address.getLatitude() + ", Longitude:" + address.getLongitude()); } 

Editado- para el código xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.google_map.MainActivity" > <fragment android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" class="com.google.android.gms.maps.SupportMapFragment" /> <TextView android:id="@+id/latlongLocation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignRight="@+id/searchView1" android:background="#ff058fff" android:gravity="bottom" android:paddingBottom="5dp" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:textColor="#ffffffff" /> <EditText android:id="@+id/searchView1" android:layout_width="250dp" android:layout_height="34dp" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="18dp" android:layout_marginTop="14dp" android:hint="Search Location" android:textColor="@android:color/black" android:background="@android:color/white" > </EditText> <Button android:id="@+id/button1" android:layout_width="28dp" android:layout_height="25dp" android:layout_alignBaseline="@+id/searchView1" android:layout_alignBottom="@+id/searchView1" android:layout_alignRight="@+id/searchView1" android:background="@drawable/g_search_btn" /></RelativeLayout> 

Si desea obtener la vista Me gusta Buscar en Google Maps. Entonces usted puede utilizar cualquiera de debajo de dos biblioteca impresionante.

1) Vista de búsqueda flotante

Agregue a continuación dependencie a su archivo gradle:

 compile 'com.github.arimorty:floatingsearchview:2.0.3' 

Ejemplo:

  <com.arlib.floatingsearchview.FloatingSearchView android:id="@+id/floating_search_view" android:layout_width="match_parent" android:layout_height="match_parent" app:floatingSearch_searchBarMarginLeft="@dimen/search_view_inset" app:floatingSearch_searchBarMarginTop="@dimen/search_view_inset" app:floatingSearch_searchBarMarginRight="@dimen/search_view_inset" app:floatingSearch_searchHint="Search..." app:floatingSearch_suggestionsListAnimDuration="250" app:floatingSearch_showSearchKey="false" app:floatingSearch_leftActionMode="showHamburger" app:floatingSearch_menu="@menu/menu_main" app:floatingSearch_close_search_on_keyboard_dismiss="true"/> 

2) SearchView

Agregue a continuación dependencie a su archivo gradle:

 compile 'com.lapism:searchview:4.0' 

Ejemplo:

 <com.lapism.searchview.SearchView android:id="@+id/searchView" android:layout_width="match_parent" android:layout_height="match_parent" /> 

Esto podría ayudar a alguien que quiera agregar barra de búsqueda junto con la API de Google Places de Google Maps

  • Google Maps open-source-attribution es increíblemente grande y bloquea el hilo principal
  • Google maps V2 - Error de autorización, no puedo mostrar el mapa
  • NoClassDefFoundError en la biblioteca Google Play Services V2
  • ¿Cómo puedo mostrar el texto árabe en google map info-window?
  • Cómo eliminar todas las polilíneas de un mapa
  • Cómo deshabilitar la función de rotación de mapas en el fragmento de mapa de Android
  • ¿Asir la ubicación del usuario con google maps v2 en android?
  • Cierre de una actividad de otra clase
  • ¿Cómo logro una animación suave del marcador de ubicación en android en un mapa de google?
  • Animación de marcadores en Google Maps V2
  • Para mostrar el mapa de Google en el emulador
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.