Wie man tablayout text Größe gleich?
Hier ist was ich getan habe: ich erstellt eine Formatvorlage für den text
<!-- Change tab text appearance -->
<style name="MyCustomTextAppearance" parent="TextAppearance.Design.Tab">
<item name="textAllCaps">false</item>
<item name="android:textAppearance">@style/CustomTabWidgetText</item>
</style>
<style name="CustomTabWidgetText"
parent="@android:style/TextAppearance.Widget.TabWidget">
<item name="android:textSize">16sp</item>
</style>
dann setze ich es auf meine tablayout
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".activity.HomeActivity"
tools:showIn="@layout/app_bar_main">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
app:titleTextColor="#ffffff"
/>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/toolbar"
android:background="?attr/colorPrimary"
app:tabSelectedTextColor="#ffffff"
app:tabTextAppearance="@style/MyCustomTextAppearance"
app:tabTextColor="#ffffff" />
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_below="@id/tab_layout" />
</RelativeLayout>
Hier ist das Ergebnis:
Wie Sie sehen können, ist der "D-day "abgeschlossen" - text ist kleiner als andere. Ich habe Antrag zu stellen dessen Größe gleich der andere, aber ich weiß nicht, wie. Bitte helfen Sie mir, danke.
Sie können sicher finden Sie hier Ihre Antwort...stackoverflow.com/questions/19442084/...
Der text würde nicht passen, wenn es größer war. Wäre es fix it Sie setzen tabLayout ist tabMode zu
oder wenn Sie eine bekannte Anzahl von Registerkarten, überlegen Sie, ob Sie tabMode fest und verringern die Schriftgröße auf kleineren Breite Bildschirme
Der text würde nicht passen, wenn es größer war. Wäre es fix it Sie setzen tabLayout ist tabMode zu
app:tabMode="scrollable"
? Dann wird vielleicht der ganze text passen würde, und Sie hätten den gleichen text Größe. Das geht in der xml, in der TabLayout
tag.oder wenn Sie eine bekannte Anzahl von Registerkarten, überlegen Sie, ob Sie tabMode fest und verringern die Schriftgröße auf kleineren Breite Bildschirme
InformationsquelleAutor Bụng Bự | 2016-04-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie versuchen, die Polsterung in TabLayout
(app:tabPaddingStart="-1dp", app:tabPaddingEnd="-1dp")
wie
Es hat mir geholfen)
Ich habe keine Ahnung, warum es funktioniert, aber es funktioniert! Vielen Dank!
Der Grund der text wurde kleiner, ist, dass Sie zu breit für die Registerkarte, so dass die Schriftgröße automatisch verringert, so dass es passen würde. Indem Sie die Registerkarte horizontale Polsterung kleiner, der text hat mehr Platz und kann deshalb passen bei normaler Schriftgröße. Aber das ganz davon ab, wie lange dein text ist. Ein text, der immer noch nicht fit, trotz der extra Raum wird noch kleiner gemacht werden.
können Sie bitte erklären, warum
-1
genau? Nicht0
. Es funktioniert auf beide Arten für mich, aber trotzdem baseView
Klasse-1
als defParam. Gibt es einige system-flag?Ich habe gerade eine Vermutung, dass ungültige Parameter deaktiviert, die 'Funktion' und es funktionierte. Ich bin nicht sicher, ob 0 gearbeitet, die Umstände - 2,5 Jahre vergangen und Android unterstützen beide Bibliotheken stark verändert.
InformationsquelleAutor Serhii Nadolynskyi
Pro dieser Beitrag, dies funktionierte wirklich gut für mich:
Den
tabMode
undtabGravity
Attribute hat den trick. Dadurch können die Etiketten span solange es sein muss und scrollen Sie etwa so:InformationsquelleAutor etherton
Nach der Erfahrung etwas ähnliches, und nach dem Lesen der TabLayout source-code, ich versuche, übergeordnete dimension, in meine dimens.xml Datei, wie hier:
und vergessen Sie nicht, fügen Sie den namespace im root der Datei, wie diese:
und es funktioniert für mich.
Hoffe, es hilft!
EDIT :
Wie es scheint, es funktioniert nicht in jeder situation (eigentlich sollte es funktionieren, wenn dein text hat zwei Zeilen oder mehr), aber es hilft, wenn der Stil nicht funktioniert. Also was ich mache ist, dass ich sowohl die Technik (Stil und überschrieben dimension).
InformationsquelleAutor thenaoh
Ist dies für mich funktioniert:
InformationsquelleAutor Rodrigo Gielow