我尝试使用 setExpandTitleTextAppearance
,但它没有起作用。我想将展开后的标题文字居中。
我尝试使用 setExpandTitleTextAppearance
,但它没有起作用。我想将展开后的标题文字居中。
在CollapsingToolbarLayout中,有一个属性expandedTitleGravity
,可以用来将展开的标题文本居中。将以下代码添加到你的CollapsingToolbarLayout中:
app:expandedTitleGravity="bottom|center_horizontal"
app:collapsedTitleGravity="center_horizontal"
,它实际上不起作用。 - ॐ Rakesh Kumarapp:titleEnabled
设置为 false,因为我不需要它。在此之后,我的布局中 Toolbar 的重力属性被正确地应用了。app:expandedTitleGravity="center"
app:collapsedTitleGravity="center"
我认为这可能对你有所帮助。
CollapsingToolbarLayout
添加android:paddingEnd:24dp
来修复它。 - Aceapp:contentInsetStart="0dp"
更好:https://stackoverflow.com/questions/35765551/collapsingtoolbarlayout-center-textview-in-toolbar - Sam Chen@Javed,如果我理解正确,您希望在工具栏中央设置标题,然后CollapsingToolbarLayout折叠,并且您的布局类似于这样,对吗?
<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>
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!"
}
android:paddingEnd="70dp"
android:paddingRight="70dp"
like this:
<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>
app:titleEnabled
设置为false就可以轻松解决问题。Toolbar
内部的TextView
之前,仅在“Up”按钮(如果启用)之后。Toolbar
内部的所有额外空间。在折叠工具栏的XML中包含以下内容:
对于折叠状态:
app:collapsedTitleGravity="center_vertical|center_horizontal"
对于展开状态:
app:expandedTitleGravity="center_vertical|center_horizontal"