Ich möchte die Größe der Android-Tabs ändern, aber ich möchte nicht alle neuen Drawables für sie machen. Die Registerkarten haben nur Text, keine Symbole, und wird Teil einer Arbeitsbereich-Ansicht, die auf horizontale Flows reagiert, so dass eine vollständige Registerkarte ist nicht notwendig für mich. Aber ich will immer noch sie Standard-Drawables für den Zweck der Trackball-Navigation oder für den Fall, dass der Benutzer drücken will, um zu einer Registerkarte zu springen, ohne den Arbeitsbereich fling.
Mein Code sieht im Wesentlichen wie folgt aus
height = (int) (height * context.getResources().getDisplayMetrics().density);
for (int i = 0; i < tabWidget.getChildCount(); i++) {
tabWidget.getChildAt(i).getLayoutParams().height = height;
}
tabWidget.getLayoutParams().height = height;
Das Problem, auf das ich stoße, ist, dass die Registerkarten je nach Höhe ein unerwartetes Aussehen haben. Wenn ich die Höhe auf etwas weniger als 60, gibt es eine Steigung, die angezeigt wird, und geht nur etwa 30dip vertikal nach oben. Wenn ich es auf 60 oder höher eingestellt, geht der Gradient den ganzen Weg nach oben.
Zur Veranschaulichung habe ich ein Bild beigefügt. Bei den oberen Beispielen sind die unteren Registerkarten auf 30, die unteren auf 40 eingestellt. In allen Beispielen ist der obere Satz von Laschen >= 60.
Weiß jemand, wie ich entweder den Farbverlauf loswerden oder ihn zwingen kann, den gesamten vertikalen Bereich abzudecken?
Aktualisierung:
Versucht, die genaue Registerkarte Größe Code auf der hallo Registerkarte Widget-Demo, und das gleiche Problem. Was sagt mir, ich bin nicht etwas in meiner Größenänderung zu tun, wenn diese Strategie für jemand anderes gearbeitet hat