Używam widżetu SearchView
, aby umożliwić wyszukiwanie w mojej aplikacji. Po pierwszym kliknięciu ikony wyszukiwania, widget SearchView
rozwija się w pole wyszukiwania, a strzałka "wstecz" jest wyświetlana obok ikony aplikacji. Po kliknięciu ikony aplikacji pasek akcji powraca do stanu początkowego (bez strzałki "wstecz"), a SearchView
powraca do ikony.Resetowanie paska akcji po użyciu SearchView
Teraz problem: po przeprowadzeniu wyszukiwania pasek akcji się nie zmienia, jedynym sposobem na przywrócenie jest kliknięcie ikony aplikacji lub strzałki "wstecz" w telefonie. Niedobrze, ponieważ chcę, aby pasek akcji przeszedł do stanu początkowego po zakończeniu wyszukiwania. Próbowałem SearchView.setIconofied(true)
ale są 2 problemy:
- Szukaj ikona pojawia się w tym samym miejscu, co w polu edycyjnym (pierwotnie to po prawej stronie).
- Pasek akcji nadal wyświetla strzałkę "wstecz".
Myślę, że problem, z którym borykam się wiąże, wynika z odejścia od zwykłego wzorca nawigacyjnego. W moim przypadku wszystko dzieje się w ramach tej samej czynności (wyniki wyszukiwania są wyświetlane w tej samej czynności, w której znajduje się pasek akcji), więc na przykład wykonanie Activity.finish()
powoduje jedynie zamknięcie aplikacji.
Jak wyzwalać "powrót o jeden krok" paska akcji? Lub symulować kliknięcie ikony aplikacji?
Chciałabym upvote to więcej niż raz. – dm78