onrestart - onresume android
cómo obtener WindowToken de Activity sin vista? (5)
Me enfrenté exactamente al mismo problema, al escribir OnPageChangeListener
dentro de una Actividad. Puedes usar una de estas soluciones. Ya sea:
getWindow().getDecorView().getRootView().getWindowToken()
o:
findViewById(android.R.id.content).getWindowToken()
Ahora, trato de ocultar el teclado cuando el usuario toca fuera del teclado:
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(editView.getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
Quiero poner la lógica en mi clase de actividad base, por lo que si es posible obtenerWindowToken sin Ver?
Puede probar esto en su etiqueta de actividad de archivo de manifiesto para ocultar el teclado.
android:windowSoftInputMode="stateHidden"
Simplemente use getWindow().getDecorView().getWindowToken()
public static final String M_TOKEN = "mToken";
@Nullable
protected IBinder getToken(Activity activity) {
try {
Field mTokenField = Activity.class.getDeclaredField(M_TOKEN);
mTokenField.setAccessible(true);
IBinder mToken = (IBinder) mTokenField.get(activity);
return mToken;
} catch (NoSuchFieldException e) {
// handle
} catch (IllegalAccessException e) {
// handle
}
return null;
}