Weiche Tastatur in der Android App aus ViewPager-Fragmenten ausblenden

8

Ich habe eine Android App, die einen ViewPager mit 2 Fragmenten enthält. Das erste Fragment enthält ein EditText-Feld. Wenn die App gestartet wird, nimmt dieses Feld sofort den Fokus und die Soft-Tastatur wird gestartet (was ich möchte). Das zweite Fragment enthält nur eine Liste (keine editierbaren Textfelder). Wenn ich von Fragment 1 zu Fragment 2 wische, möchte ich, dass die Tastatur verschwindet. Nichts, was ich versucht habe, scheint zu funktionieren. Die Tastatur bleibt nicht nur in der Ansicht, sie aktualisiert weiterhin das EditText-Feld von Fragment 1.

Ich nehme an, dass ich entweder falschen Code verwende, um die Tastatur zu verstecken oder sie an einem falschen Ort zu platzieren. Wenn jemand ein Beispiel für die korrekte Implementierung veröffentlichen kann, wäre das sehr zu begrüßen!

Mein letzter Versuch war es, Code zu platzieren, der die Tastatur in der onDetach () Methode von Fragment 1 verstecken sollte:

%Vor%     
Jabari 28.08.2012, 20:57
quelle

3 Antworten

10

Siehe diese Antwort. Im Grunde genommen müssen Sie die OnPageChangeListener Ihres ViewPagers die Tastatur für Sie verbergen. (Wenn Sie möchten, dass Ihre Wischanimation flüssig bleibt, tun Sie dies in onPageScrollStateChanged anstelle von onPageSelected .)

%Vor%     
Makario 30.10.2013, 15:35
quelle
0

In Ihrem AndroidManifest sollten Sie zur Aktivitätserklärung Android hinzufügen: windowSoftInputMode="stateHidden":

%Vor%

Und in Ihrem Layout löschen Sie aus EditText Kinder requestFocus:

%Vor%     
ClarkXP 28.08.2012 22:04
quelle
0
%Vor%     
user2488738 29.11.2013 09:55
quelle