2016-12-15 3 views
0

Ich schreibe ein Fragment und setze lass Android: windowSoftInputMode in der androidmanifest.xml als Standard. Aber die Aktivität, die sie verwendet, setzt ihr android: windowSoftInputMode als stateHidden | adjustResize, so dass die Soft-Tastatur nicht wie angenommen ablehnt, aber die Host-Aktivität möchte ihr Attribut nicht ändern. Ich versuche zu verwendenKann fragment ändern windowSoftInputMode der Aktivität?

((Activity)sContext).getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); 

aber es funktioniert nicht. Ich denke, Fragment hat nicht die Erlaubnis, dieses Attribut der Aktivität zu ändern, oder? Kann ich den Standardwert in meinem Fragment verwenden und hat keine Auswirkungen auf andere in der Aktivität?

Antwort

0

Zum Abrufen einer Aktivität aus einem Fragment können Sie die getActivity() - Methode verwenden, mit der Sie eine übergeordnete Aktivität abrufen können.

Versuchen folgende Verwendung

getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); 
+0

es nicht funktioniert, und die sContext ist die Aktivität, was ich am wichtigsten ist, dass tut Fragment, das die Erlaubnis, dies zu tun hat. – newszer

Verwandte Themen