onQueryTextChange activado después del restablecimiento de la aplicación

Estoy stumbed con searchview animado onQueryTextListener. Cuando la actividad y el fragmento creado primero funciona bien. A continuación, presionar el botón de inicio, abrir otras aplicaciones, hacer un trabajo allí para borrar los datos de la actividad de búsqueda y luego volver a la aplicación. Y cuando el método onQueryTextChange reanuda la actividad y el fragmento es activado por su propio. Intenté este problema El reemplazo de fragmentos activa onQueryTextChange en searchview pero no ayudó, solo ayuda cuando searchview SHOW_AS_ACTION_NEVER, pero en este caso no puedo ver searchview. ¿Cómo prevenir el auto-desencadenamiento de OnQueryTextListener? Fragmento del fragmento

@Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { searchView = new SearchView(getSherlockActivity().getSupportActionBar() .getThemedContext()); searchView.setOnQueryTextListener(new OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { // TODO Auto-generated method stub return false; } @Override public boolean onQueryTextChange(String newText) { if (newText.length() > 0) { fpAdapter.getFilter().filter(newText); } else { loadData(); } return false; } }); TextView searchText = (TextView) searchView .findViewById(R.id.abs__search_src_text); searchText.setTextColor(Color.WHITE); searchText.setCursorVisible(false); ImageView searchButton = (ImageView) searchView .findViewById(R.id.abs__search_button); searchButton.setImageResource(R.drawable.search_menu_button); LinearLayout searchEditFrame = (LinearLayout) searchView .findViewById(R.id.abs__search_edit_frame); searchEditFrame.setBackgroundResource(android.R.color.transparent); View searchPlate = searchView.findViewById(R.id.abs__search_plate); searchPlate.setBackgroundColor(Color.argb(0, 0, 0, 0)); menu.add("Search") .setActionView(searchView) .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); final MenuItem searchMenuItem = menu.getItem(0); final Animation in = AnimationUtils.loadAnimation(getSherlockActivity() .getApplicationContext(), R.anim.search_in); final Animation out = AnimationUtils.loadAnimation( getSherlockActivity().getApplicationContext(), R.anim.search_out); searchView.setQueryHint(getResources().getText( R.string.search_messages_hint)); searchView.setIconifiedByDefault(true); searchView .setOnQueryTextFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View view, boolean queryTextFocused) { if (!queryTextFocused) { // searchView.startAnimation(out); searchMenuItem.collapseActionView(); } else { searchView.startAnimation(in); } } }); super.onCreateOptionsMenu(menu, inflater); } 

Actualización: Esto sólo aparece en HTC sensación XL con Android 4.0.3, en 4.2 No veo este problema.

Encontrado la única solución – set oyente en onResume:

 @Override public void onResume() { super.onResume(); searchView.setOnQueryTextListener(new OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { // TODO Auto-generated method stub return false; } @Override public boolean onQueryTextChange(String newText) { if (newText.length() > 0) { fpAdapter.getFilter().filter(newText); } else { loadData(); } return false; } }); } 

utilice este código

  searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String s) { return false; } @Override public boolean onQueryTextChange(final String s) { if(searchView.getWidth()>0) { // your code here } return false; } }); 
  • ¿Cómo personalizar el botón "arriba" cuando se está expandiendo el searchView?
  • Buscar EditarTexto de animación como la aplicación de Chrome
  • SearchView en ListView con un adaptador personalizado
  • Botón del micrófono ActionBar (búsqueda por voz) en SearchView
  • Restablecer barra de acciones después de usar SearchView
  • vista de búsqueda no expandir todo el ancho
  • Icono de Android SearchView
  • Barra de Acción de Android SearchView Menu Icon Size
  • SearchView en OptionsMenu no es el ancho completo
  • ¿Cómo manejar el evento de clic de sugerencia con SearchView en ActionBar, ContentProvider llamando a webService, devolviendo el cursor?
  • La vista de búsqueda no responde cuando se hace clic en la barra de herramientas de AppCompat
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.