No se pudo cambiar actionbarsherlock SearchView icon
Cuando uso la siguiente configuración:
<item android:id="@+id/menu_item_search" android:actionViewClass="com.actionbarsherlock.widget.SearchView" android:icon="@android:drawable/ic_menu_search" android:showAsAction="ifRoom" android:title="@string/action_search"/>
ActionBarSherlock SearchView no reacciona en el android proporcionado: icon
- ActionBar Sherlock Tabs en la parte inferior
- Alinear los iconos de la pestaña de navegación de ActionBar encima del texto de la pestaña?
- ActionBarSherlock + ID de duplicado de la API de Google Maps v2
- ActionBarSherlock + Tabbed Fragments + ViewPager insider un fragmento
- ¿Cómo prevenir los incendios onNavigationItemSelected cuando se inicia la actividad?
Pero en caso de
android:showAsAction="ifRoom|collapseActionView"
El icono se cambia correctamente, pero el botón de cierre dentro de la vista de búsqueda está ausente.
¿Cómo cambiar el icono de búsqueda y mostrar el botón Cerrar en la esquina derecha de la vista de búsqueda?
Este es mi AppTheme:
<style name="AppTheme" parent="AppBaseTheme"> <item name="android:windowBackground">@color/background_window</item> <item name="android:actionBarStyle">@style/ActionBarStyle</item> <item name="homeAsUpIndicator">@drawable/new_indicator</item> <item name="android:homeAsUpIndicator">@drawable/new_indicator</item> <!-- ActionBar (SearchView) fix --> <item name="textColorPrimary">@color/abs__primary_text_holo_light</item> <item name="textColorPrimaryInverse">@color/abs__primary_text_holo_dark</item> <item name="searchDropdownBackground">@drawable/abs__search_dropdown_dark</item> <item name="searchViewTextField">@drawable/abs__textfield_searchview_holo_dark</item> <item name="searchViewTextFieldRight">@drawable/abs__textfield_searchview_right_holo_dark</item> <item name="searchViewCloseIcon">@drawable/abs__ic_clear</item> <item name="searchViewSearchIcon">@drawable/abs__ic_voice_search</item> <item name="searchViewGoIcon">@drawable/abs__ic_go</item> <item name="searchViewVoiceIcon">@drawable/abs__ic_voice_search</item> <item name="searchAutoCompleteTextView">@style/Widget.Sherlock.SearchAutoCompleteTextView.DarkActionBar</item> </style> <style name="Widget.Sherlock.SearchAutoCompleteTextView.DarkActionBar"> <item name="android:textColor">?attr/textColorPrimaryInverse</item> </style>
Aplicación del manifiesto:
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
Menú de la barra de acciones:
<item android:id="@+id/menu_item_search" android:icon="@drawable/abs__ic_clear" android:actionViewClass="com.actionbarsherlock.widget.SearchView" android:showAsAction="ifRoom" android:title="@string/action_search"/> <item android:id="@+id/menu_item_contact" android:icon="@drawable/ic_action_user" android:showAsAction="ifRoom" android:title="@string/action_contact"/>
Configuración del menú SearchView:
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.menu_item_search).getActionView(); if (null != searchView) { searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(true); } SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() { public boolean onQueryTextChange(String newText) { // this is your adapter that will be filtered // adapter.getFilter().filter(newText); return true; } public boolean onQueryTextSubmit(String query) { // this is your adapter that will be filtered // adapter.getFilter().filter(query); return true; } }; searchView.setOnQueryTextListener(queryTextListener);
- DialogFragment no cambia el tamaño cuando se muestra el teclado
- Actualizar el contenido de las pestañas de Android Sherlock
- OnNavigationItemSelected de la barra de acciones (int position, long itemId) no se dispara después de deslizar horizontalmente en Gingerbread
- Android abs con SearchView, onQueryTextListener no funciona
- ¿Dónde están almacenados los dibujos o clipart de android.R.drawable?
- HoloEverywhere CLassNotFoundException al usar WebView
- Android ListView problemas en Android 2.X
- Android Viewpager como Galería de imágenes de diapositivas
Puede lograr esto estableciendo un atributo para su tema de actividad. En tu styles.xml agrega las siguientes líneas y asegúrate de aplicar MyTheme o lo que sea que quieras llamarlo a tu aplicación oa la actividad donde vive tu búsqueda. También he añadido el atributo "searchAutoCompleteTextView" que le permitirá personalizar el color del texto y tal si lo desea.
<style name="MyTheme" parent="Theme.Sherlock"> <item name="searchViewCloseIcon">@drawable/YOUR_CLOSE_ICON</item> <item name="searchViewSearchIcon">@drawable/YOUR_SEARCH_ICON</item> <item name="searchAutoCompleteTextView">@style/searchTextView</item> </style> <style name="searchTextView" parent="Widget.Sherlock.SearchAutoCompleteTextView"> <item name="android:textColor">@android:color/white</item> <item name="android:textColorHint">@android:color/black</item> </style>
- Cómo encontrar la dirección IP de la LAN del dispositivo Android?
- No hay Android SDK encontrado – Android Studio