Ho una vista di ricerca nel mio frammento. quando clicco su di esso, la tastiera è aperta e posso digitare testo. Voglio quando faccio clic sul pulsante di ricerca nella tastiera, la mia query invia al mio server e ottenere il risultato, ma non so come ottenere evento di ricerca. qualche soluzione? inviare una query quando si fa clic sul pulsante di ricerca nella tastiera
5
A
risposta
8
È necessario estendere OnQueryTextListener, collegare l'ascoltatore e implementare onQueryTextSubmit.
Esempio:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
searchView = (SearchView) menu.findItem(R.id.mActionSearch).getActionView();
searchView.setOnQueryTextListener(this);
return true;
}
@Override
public boolean onQueryTextSubmit(String query) {
//Do something here
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
0
Pozzo Apps risposta è giusta
ma per api sotto 11 e la biblioteca compat si può usare qualcosa di simile:
MenuItem search_menu=(MenuItem)menu.findItem(R.id.action_search);
SearchView searchView =(SearchView)MenuItemCompat.getActionView(search_menu);
0
È inoltre possibile applicare setOnKeyListener su visualizza come nel seguente esempio:
searchview.setOnKeyListener(new View.OnKeyListener(
{
Public boolean onKey(View v, int keyCode, KeyEvent event)
{
if(event.getAction() == KeyEvent.ACTION_DOWN)
{
switch(keyCode)
{
Case KeyEvent.KECODE_ENTER:
// Apply action which you want on search key press on keypad
return true;
default:
break;
}
} return false;
}
});
0
È necessario aggiungere nuovo OnQueryTextListener e implementare onQueryTextSubmit. Anche questo funziona in un frammento.
Esempio:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.main_search, menu);
SearchView sv = (SearchView) menu.findItem(R.id.action_search).getActionView();
sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
//Do something here
Toast.makeText(getActivity(), "Search: " + query, Toast.LENGTH_SHORT).show();
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
});
super.onCreateOptionsMenu(menu,inflater);
}
Problemi correlati
- 1. Dati di aggiornamento (JQuery) quando si fa clic sul pulsante
- 2. Android: cambia fotocamera quando si fa clic sul pulsante
- 3. PgAdmin a volte si blocca quando si fa clic sul pulsante query SQL
- 4. UISearchDisplayController - Metodo per quando si fa clic sul pulsante Annulla
- 5. Ottenere valore pulsante di scelta quando si fa clic sul pulsante non funziona angularjs
- 6. Come forzare LostFocus quando fa clic sul pulsante
- 7. TextView per inviare e-mail quando si fa clic su
- 8. Viene fornita una risposta direttamente dalla cache quando si fa clic sul pulsante Indietro
- 9. Come aggiungere un nuovo campo di testo quando si fa clic sul pulsante
- 10. Perdita dei dati del modulo quando si fa clic sul pulsante Indietro sul browser
- 11. cambia colore di sfondo pulsante quando si fa clic su
- 12. Come inviare un'azione quando si fa clic su Link quando si utilizza React-Router & Redux?
- 13. Come aprire l'app iOS quando si fa clic sul pulsante personalizzato Push Notification?
- 14. Datepicker: Come popup datepicker quando si fa clic sul pulsante e si memorizza il valore nella variabile
- 15. disabilita la convalida di errorprovider quando si fa clic sul pulsante Annulla
- 16. Impossibile disabilitare l'animazione di transizione quando si fa clic sul pulsante indietro
- 17. Rendi l'interfaccia utente wpf reattiva quando si fa clic sul pulsante
- 18. Come si mantiene il pulsante Annulla nella barra di ricerca abilitata quando la tastiera viene chiusa?
- 19. Copia testo di textarea negli appunti quando si fa clic sul pulsante
- 20. Come impostare l'immagine di condivisione quando si fa clic sul pulsante Mi piace
- 21. Quale metodo viene chiamato quando si fa clic sul pulsante Indietro nel controller di navigazione?
- 22. Reimposta il testo nel campo di testo di UISearchBar quando si fa clic sul pulsante X, ma non si dimette firstresponder
- 23. Android: cambia colore pulsante quando si fa clic su
- 24. Come chiudere la finestra Html quando si fa clic sul pulsante asp.net?
- 25. fare clic sul pulsante jQuery + inviare dati senza modulo - segnalibro
- 26. MKAnnotationView Push to View Controller quando si fa clic sul pulsante DetailDesclosure
- 27. Previene l'attività di ricarica quando si fa clic su SearchView
- 28. Tastiera Android non visualizzata quando si fa clic sull'input nella vista Web
- 29. Quando si fa clic sulla tastiera del tasto chiaro di uitextfield non scompare il testo
- 30. Perché SelectedIndexChanged si attiva per una DropDownList quando si fa clic su un pulsante?
Grazie mille, ha funzionato;) –
grandi, vuoi impostare la mia risposta come suppliche corrette. –
StackOverflow non mi permette di accettare la tua risposta fino a 5 minuti passati il mio amico;) –