Warum ändert sich die Textgröße nicht beim Wechsel zwischen dem geschlossenen und geöffneten Zustand des Galaxy Fold?
- Kurzüberblick: Ursache des Problems
- Technische Details: Ressourcen und Konfigurationen
- Skalierungs- und Density-Probleme
- App-Design und Entwicklerentscheidungen
- Lösungsansätze und was Nutzer/Entwickler tun können
- Fazit
Kurzüberblick: Ursache des Problems
Die Textgröße bleibt beim Wechsel zwischen geschlossenem (kleinem Bildschirm) und geöffnetem (großer Inner-Screen) Zustand eines Galaxy Fold konstant, weil die App oder das Betriebssystem die Darstellung nicht dynamisch an die unterschiedliche Bildschirmgröße oder -dichte anpasst. Das kann an mehreren technischen Faktoren liegen: fehlende oder falsche Implementierung von Ressourcenwechseln, fehlende Unterstützung für unterschiedliche Layout-Konfigurationen, oder daran, dass die verwendete Methode zur Skalierung von Schrift nicht für konfigurative Änderungen wie Bildschirmumschaltung ausgelegt ist.
Technische Details: Ressourcen und Konfigurationen
Android verwendet unterschiedliche Mechanismen, um Layouts, Schriftgrößen und Ressourcen an verschiedene Bildschirmkonfigurationen zu binden. Bei klassischen Konfigurationsänderungen wie Rotation löst das System eine Neukonfiguration aus und lädt geeignete Ressourcen (z. B. values-sw600dp, values-wXXXdp oder alternative Layouts). Bei Foldables und beim Umschalten zwischen den Displays kann die relevante Konfigurationsänderung entweder eine Änderung der verfügbaren Breite/Height (Configuration.screenWidthDp / screenHeightDp) oder eine Änderung der Display-Metriken sein. Wenn die App nur feste Textgrößen (px) verwendet oder Schriftgrößen in einer einzigen Ressourcen-Datei definiert, findet keine automatische Anpassung statt. Ebenso, wenn die App nicht auf onConfigurationChanged reagiert oder Activities nicht korrekt für diese Änderungen konfiguriert sind, bleibt die Darstellung unverändert.
Skalierungs- und Density-Probleme
Ein weiterer Grund sind unterschiedliche displayMetrics (density, scaledDensity). Manche Foldables nutzen unterschiedliche Dichte-Werte zwischen Inner- und Cover-Display oder melden keine Änderung der scaledDensity beim Umschalten, sodass sp-basierte Schriftgrößen (scalable pixels) sich nicht anpassen. Wenn die App Schriftgrößen in sp einsetzt, werden Nutzerfont-Skalierung und systemweite Textgrößen berücksichtigt; diese Werte ändern sich aber nicht automatisch nur durch das Aufklappen, sofern das Betriebssystem die scaledDensity nicht anpasst.
App-Design und Entwicklerentscheidungen
Viele Apps sind so gestaltet, dass sie ein konsistentes Layout über verschiedene Formfaktoren bewahren, um Brüche im Nutzererlebnis zu vermeiden. Entwickler wählen feste Typografie-Sets oder responsive Designs, die auf Breitenklassen reagieren. Wenn diese Regeln nicht auf das Ereignis „Aufklappen“ ausgelegt sind, bleibt die Textgröße gleich. Manche Apps deaktivieren zudem das Neuladen der Activity bei Konfigurationsänderungen (android:configChanges), um Datenverlust oder lange Neuladungen zu vermeiden; das hat zur Folge, dass keine neuen Ressourcen geladen werden.
Lösungsansätze und was Nutzer/Entwickler tun können
Auf Nutzerseite lässt sich meist wenig direkt ändern außer System- oder App-Textskalierung vorzunehmen. Entwickler sollten responsive Layouts einbauen: Schriftgrößen in sp verwenden, alternative values-Ordner für unterschiedliche dp-Breiten bereitstellen, onConfigurationChanged oder WindowManager callbacks korrekt nutzen und Layouts bei Displaywechsel neu messen/neu binden. Für Foldables empfiehlt sich das Testen mit den spezifischen Lifecycle- und Display-API-Events (z. B. Jetpack WindowManager) und das Anbieten adaptiver Typografie, die bei Wechsel der verfügbaren Breite/Height aktualisiert wird.
Fazit
Die konstante Textgröße beim Wechsel zwischen geschlossenem und geöffnetem Zustand entsteht meist, weil weder das System noch die App die notwendigen Konfigurations- oder Display-Metrikänderungen so verarbeiten, dass andere Ressourcen oder Styles geladen werden. Abhilfe schafft eine adaptive Implementierung, die auf Display- und Konfigurationsänderungen reagiert und Schriftgrößen dynamisch anpasst.
