1

У меня есть SearchView, что в настоящее время всегда показывается и TabHost выше следующим образом:SearchView не сосредоточены должным образом после изменения вкладки TabHost

SearchView on top ("žodis"), TabHost above ("English", "Lietuvių")

Я пытаюсь держать SearchView сосредоточены на определенных условиях делает :

searchView.setIconified(false); 
searchView.requestFocusFromTouch(); 

, когда мне нужен фокус. Кажется, он работает нормально.

Однако, если пользователь переключает вкладки, Перефокусировка SearchBar в TabHost.OnTabChangeListener, кажется, не работает должным образом - клавиатура все еще отображается как если SearchView еще сосредоточенный, но курсор на виду поиска ушел, и пользователь не может ничего типа в. Нажатие на просмотр поиска фиксирует вещи, но я хотел бы сделать «коснитесь» себя, а не пользователя.

Как правильно пересмотреть поиск?

+0

ли вы найти решение? – makovkastar

+0

@makovkastar да, только что опубликовал один. – Linas

ответ

0

я в конечном итоге переориентацию SearchView после задержки, чтобы пользовательский интерфейс для завершения обновления (на мобильный, извините за краткость и опечаток):

tabHost.setOnTabChangedListener(new TabHost.OnTabChangeListener() { 
    @Override public void onTabChanged(String tabId) { 
     searchView.postDelayed(new Runnable() { 
      @Override public void run() { 
       searchView.setIconified(false); 
       searchView.requestFocusFromTouch(); 
      } 
     }, 100); 
    } 
}); 
Смежные вопросы