HorizontalScrollView in TabHost fügt zusätzlichen Platz am Ende hinzu

9

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).

    
S Fitz 05.08.2013, 09:06
quelle

2 Antworten

0

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.

    
Hardik Parmar 27.04.2015 05:02
quelle
0

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%     
Hans Reichenbach 28.12.2015 22:02
quelle