Ich versuchte setExpandTitleTextAppearance
, aber es hat nicht funktioniert. Ich möchte den erweiterten Titeltext zentrieren.Wie zentriert man den Titel eines CollapsingToolbarLayout?
Antwort
@Javed, korrigieren Sie mich, wenn ich falsch liege, möchten Sie den Titel in der Symbolleiste zentriert haben, dann CollapsingToolbarLayout ist zusammengebrochen und Ihr Layout ist so etwas, oder?
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp"
android:fitsSystemWindows="true">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax"/>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
Dann können Sie diesen Trick tun (ich tue es in onCreate der Aktivität):
try {
Field declaredField = toolbar.getClass().getDeclaredField("mTitleTextView");
declaredField.setAccessible(true);
TextView titleTextView = (TextView) declaredField.get(toolbar);
ViewGroup.LayoutParams layoutParams = titleTextView.getLayoutParams();
layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
titleTextView.setLayoutParams(layoutParams);
titleTextView.setGravity(Gravity.CENTER_HORIZONTAL);
} catch (Exception e) {
//"Error!"
}
Der Schlüssel ist, dass Textview innerhalb Toolbar width-Eigenschaft "Wrap Content" hat, so müssen wir ändere es in "Parent Eltern". (Siehe weitere Einzelheiten zu dieser Reflexion here)
auf Android 5.1.1 getestet und Android 4.3 (sollte ziemlich überall arbeiten)
Ich arbeite an dem gleichen Problem. Zentrieren eines benutzerdefinierten Titels 'TextView' in einer' Toolbar' scheint so zu sein, wie es funktionieren sollte, aber aus irgendeinem Grund zentriert 'layout_gravity = "center" 'den Text in diesem Szenario nicht. Der 'TextView'-Text wird stattdessen rechtsbündig ausgerichtet. Möglicherweise ein Fehler. – Ryan
@Ryan großer Fang, liebe es! Reparierte meine Antwort und testete es auf Android 5.1.1 und Android 4.3. Danke für die Nachricht! –
Ihre aktualisierte Antwort sieht so aus, als ob sie funktionieren sollte, aber ich hasse es, auf Reflektion zurückgreifen zu müssen. Schade, es gibt keinen strafferen Ansatz für dieses Problem. – Ryan
Es ist ein Attribut expandedTitleGravity
, die Sie mit dem CollapsingToolbarLayout können den erweiterten Titel zum Zentrum Text. Fügen Sie diese auf Ihre CollapsingToolbarLayout:
app:expandedTitleGravity="bottom|center_horizontal"
Perfekte Antwort :) –
intelligente Antwort :) –
In meinem Anwendungsfall, habe ich app:titleEnabled
auf falsch, ich habe es sowieso nicht brauchen. Danach wurde meine Schwerkraft innerhalb des Toolbar-Layouts respektiert.
Ich wollte meine benutzerdefinierte Symbolleiste Titel in der Mitte zeigen. durch die Einrichtung dieser Eigenschaft in CollapsingToolbarLayout half mir bei meiner Anforderung. Vielen Dank. – Jigar
gut und einfach. –
Wie Nguyễn Hoàng Anh oben gesagt hat, setzen app:titleEnabled
zu false arbeitete wie ein Charme.
Mit dieser Option aktiviert ist, nachdem einige mit dem Layout-Inspektoren zu graben, verdächtige unbenannte-Ansicht immer vor TextView
innerhalb von Toolbar
hinzugefügt wird, kurz nach ‚Up‘ Taste (wenn es aktiviert ist).
Also, obwohl Layout Schwerkraft richtig funktioniert, nimmt einige verdächtige Ansicht alle zusätzlichen Leerzeichen innerhalb der Toolbar
.
Im Fall versuchen Sie, den Titel im zusammengeklappten Zustand zu zentrieren Sie
android:paddingEnd="70dp"
android:paddingRight="70dp"
wie diese verwenden:
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingEnd="70dp"
android:paddingRight="70dp"
app:collapsedTitleGravity="center_horizontal"
app:expandedTitleGravity="start"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin">
</android.support.v7.widget.Toolbar>
</android.support.design.widget.CollapsingToolbarLayout>
- 1. CollapsingToolbarLayout mit mehrzeiligem Titel
- 2. Wie kann ich den erweiterten Titel von CollapsingToolbarLayout multiline?
- 3. Zentriert Titel Google Chart
- 4. CollapsingToolbarLayout Titel mit Ellipse Marquee
- 5. Toolbar innerhalb CollapsingToolbarLayout, Toolbar Titel zeigt nicht
- 6. Mehrzeilige Textansicht in CollapsingToolbarLayout anstelle von Titel
- 7. CollapsingToolbarLayout Titel als ein gemeinsames Element Übergang
- 8. Wie zentriert man den ng-Tabellenkopf?
- 9. Wie zentriert man UIActivityIndicator?
- 10. Wie in einem CollapsingToolbarLayout erweitert Titel zum Zentrum
- 11. Wie zentriert man Text?
- 12. xcode segmentedcontrol Titel - Wie man den Titel style
- 13. ReactNative: Wie zentriert man Text?
- 14. Wie zentriert man in LWUIT?
- 15. Wie zentriert man ein div?
- 16. CSS, wie man Tabelle zentriert
- 17. Wie man horizontal divs innerhalb eines anderen div zentriert
- 18. Wie zentriert man drei divs horizontal innerhalb eines Elternteils?
- 19. Wie zentriert man ein Bild innerhalb eines div?
- 20. Wie man den Charakter auf den Titel beschränkt Blogger
- 21. den Titel eines Tab in wx.Notebook
- 22. dynamisch den Titel eines android.support.v4.view.PagerTitleStrip
- 23. Wie zentriert man den Inhalt in einem linearen Layout?
- 24. Bootstrap: Wie zentriert man den Inhalt innerhalb der Spalte?
- 25. Wie ändert man die Schriftart des Symbolleistentitels in CollapsingToolbarLayout?
- 26. Wie man Titel hinzufügt?
- 27. ios Titel und Untertitel in der Navigationsleiste zentriert
- 28. Wie bekomme ich den Titel eines Links mit PHP Domodokument
- 29. Wie zitiere ich den Titel eines Artikels in LaTeX?
- 30. Wie zentriert man Text in Listen?
Zeigen Sie uns, was Sie versucht haben, bereits, die leichter zu ‚Hilfe 'so –