Um einfach zwischen Fragmenten zu wechseln, schließe ich ein HorizontalScrollView in mein Tab-Layout ein:
%Vor%Aber nach dem Hinzufügen von Fragmenten in meinem Code (siehe unten) zeigt sich am Ende der HorizontalScrollView plötzlich ein zusätzliches Leerzeichen:
Vor dem Bildlauf
Nach dem Bildlauf
Der Code ist ziemlich komplex, aber ich werde versuchen, die wichtigen Teile zu zeigen.
%Vor%Auch nicht verwandt, aber ich habe auch ein Problem, bei dem die erste Registerkarte nicht manuell geladen wird (das Anklicken der Registerkarten lädt die Fragmente perfekt, nur die erste wird aus irgendeinem Grund nicht geladen).
Ich denke, Sie sind manuell hinzufügen Tabhost wie ..
%Vor%in diesem Code ich hinzufügen Tab-Taste auf manuell und seine Last auf Fragment.
TabWidget hat measureWithLargestChild standardmäßig auf true gesetzt, was bedeutet, dass es die breiteste Ihrer Registerkarten verwendet, um die Gesamtbreite des internen LinearLayouts zu berechnen, das TabWidget verwendet, wenn es sich selbst misst. Wenn Ihre Tabs unterschiedlich lang sind, führt dies dazu, dass das interne LinearLayout am Ende mehr Platz hat als der Unterschied zwischen den kürzeren Tabs und dem breitesten Tab. Wenn Sie android:measureWithLargestChild="false"
zu Ihrem TabWidget-Layout hinzufügen, sollte es Ihr Problem lösen.
tl; dr Ändern Sie Ihr Layout TabWidget zu:
%Vor%Tags und Links android android-fragments android-tabs horizontalscrollview