Sto utilizzando un'animazione di spinner di caricamento con un set di elementi. Se fai clic al di fuori di esso, dovrebbe scomparire. Qualcuno sa come si fa questo?Nascondere uno spinner di caricamento quando si fa clic all'esterno di esso in Android
Ho provato questo. Funziona con EditText
. Ma non funziona per Spinner
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
View view = getCurrentFocus();
boolean ret = super.dispatchTouchEvent(event);
if (view instanceof EditText||view instanceof Spinner) {
View w = getCurrentFocus();
int scrcoords[] = new int[2];
w.getLocationOnScreen(scrcoords);
float x = event.getRawX() + w.getLeft() - scrcoords[0];
float y = event.getRawY() + w.getTop() - scrcoords[1];
if (event.getAction() == MotionEvent.ACTION_UP
&& (x < w.getLeft() || x >= w.getRight()
|| y < w.getTop() || y > w.getBottom())) {
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindow().getCurrentFocus().getWindowToken(), 0);
}
}
return ret;
}
Grazie in anticipo.
Guardare http://stackoverflow.com/questions/8384067/how-to-dismiss-the-dialog-with-click-on-outside-of-dialog/8384124#8384124 – user370305
Ho già controllato questo collegamento . ma sarà possibile per un dialogo ma non per lo spinner. –
Devi controllare il tocco della tua finestra di attività (al di fuori di Spinner). Di cui ho parlato in quella risposta. Controllo – user370305