Android SearchView no permite escribir (¿conflicto con TabActivity?)

Estoy trabajando en una aplicación que utiliza un SearchView incrustado en el ActionBar. Funciona perfectamente en toda la aplicación, excepto en una Activity. En este Activity, puedo hacer clic en el ícono de búsqueda para mostrar la vista de búsqueda en la barra de acción, pero tan pronto como escribo algo en la vista de búsqueda, mi entrada de texto se ignora (no se muestra texto) y el foco se aleja del cuadro de búsqueda.

La principal diferencia entre esta actividad y las demás en mi aplicación es que esta actividad tiene pestañas que se implementan usando TabActivity. Me pregunto si esa es la causa, y si alguien tiene una posible solución.

Este es el código para el SearchView:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu, menu);
    SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
    searchView.setSubmitButtonEnabled(true);
    searchView.setOnQueryTextListener(queryTextListener); 
    searchView.setQueryHint("product search");

    return true;
} 

final SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() { 
    @Override 
    public boolean onQueryTextChange(String newText) { 
        return true; 
    } 

    @Override 
    public boolean onQueryTextSubmit(String query) { 
        _listControl = new ListControl(_thisProduct,query);
        _listControl.startGetData(); 
        return true; 
    } 
}; 

Esta es la configuración de mi actividad con pestañas. Las pestañas cambian entre diferentes vistas.

 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.product);


    //set up tabs 
    mTabHost = getTabHost();
    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Info").setContent(R.id.productLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Specs").setContent(R.id.specLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("Reviews").setContent(R.id.reviewLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test4").setIndicator("Buy").setContent(R.id.textView4));//


    mTabHost.setCurrentTab(0);
    mTabHost.getTabWidget().getChildAt(0).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(1).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(2).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(3).getLayoutParams().height = 40;

preguntado el 09 de marzo de 12 a las 23:03

1 Respuestas

Estoy seguro de que SearchView debería funcionar con una actividad con pestañas e intentaré informarle muy pronto. Mientras tanto, ¿podría intentar usar ViewPager en lugar de la actividad con pestañas que tiene que funciona con fragmentos o como una opción? ActionBar en sí proporciona funcionalidad para mostrar pestañas. Déjame saber cómo va.

Respondido 07 Feb 14, 19:02

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.