Ich habe einen ViewPager mit 2 verschiedenen Fragmenten. Für das erste Fragment möchte ich es so definieren, dass es auf der weichen Tastaturöffnung seine Größe nicht ändert. Für das zweite Fragment würde ich gerne die Größe ändern lassen.Varying windowSoftInputMode für Fragmente im Viewpager
Die Einstellung android:windowSoftInputMode="adjustPan"
innerhalb des Manifests funktioniert für beide Fragmente, aber ich möchte sie zwischen den beiden variieren.
Was ich nach Google getan sucht:
// create ContextThemeWrapper from the original Activity Context with the custom theme
Context context = new ContextThemeWrapper(getActivity(), R.style.NoResize);
// clone the inflater using the ContextThemeWrapper
LayoutInflater localInflater = inflater.cloneInContext(context);
// inflate using the cloned inflater, not the passed in default
return localInflater.inflate.inflate(R.layout.my_layout,container,false);
Ich habe benutzerdefinierte das Thema definiert sein:
<style name="NoResize" parent="@style/AppTheme">
<item name="android:windowSoftInputMode">adjustPan</item>
</style>
Die Aktivität wird mit Standard windowSoftInputMode definiert, die die Ansichten ändert die Größe, wenn Softkeyboard eröffnet.
Wird daran arbeiten, bis es gelöst wird, aber wenn jemand anderes dieses Problem hat und es gelöst, wäre es toll, irgendwelche Gedanken zu hören.
Danke!
Moxor, ich verstehe nicht ganz, welches Problem Sie haben, aber Sie möchten vielleicht Ihre eigene Frage öffnen, um sie genauer zu beschreiben. Für die hier gestellte Frage - Ändern des Soft-Eingabemodus des Fensters - ist Ihre Antwort korrekt. Es kann Fälle geben, in denen der Soft-Input-Modus des Fensters nicht ausreicht, aber es gibt keine einzige Lösung für alle Fälle. Es hängt von der Art Ihres speziellen Problems ab. –
Danke, ich werde wahrscheinlich eine neue Frage eröffnen. Mein besonderes Problem war, zwei sichtbare Fragmente gleichzeitig zu haben und unterschiedliche Verhaltensweisen zu erwarten – Moxor