我尝试了setExpandTitleTextAppearance
,但它没有用。我想将扩展的标题文本居中。
答案 0 :(得分:16)
在我的用例中,我将app:titleEnabled
设置为false,无论如何我都不需要它。之后,我的引力在工具栏布局中得到了正确的尊重。
答案 1 :(得分:3)
@Javed,如果我错了,请更正我,你想让标题居于工具栏中,然后折叠CollapsingToolbarLayout,你的布局是这样的,对吗?
/* allows user to play one mp3 at a time */
/* declare variables: get tag from html */
var audios = document.getElementsByTagName("audio");
var links = document.getElementsByTagName("a");
/* bind() is used for binding audio attribute and parameters of a function call, audio is the current audio element played( comes from the binding above), we compare each element in audios with this, and pause all those which are not matching. */
for (var i=0; i<audios.length;i++) {
audios[i].onplay = pauseAllAudios.bind(null, audios[i]);
}
function pauseAllAudios(audio) {
for(var i=0; i<audios.length;i++)
if(audios[i]!=audio) {
audios[i].pause();
} else if (links.click() ) {
audios[i].stop();
}
};
然后你可以做这个伎俩(我在onCreate of the Activity中这样做):
<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>
关键是工具栏中的TextView具有宽度属性&#34; Wrap Content&#34;,因此我们需要将其更改为&#34; Match Parent&#34;。 (查看有关此反射的更多信息here)
在Android 5.1.1和Android 4.3上测试过(应该可以在任何地方使用)
答案 2 :(得分:2)
如果您尝试将标题置于折叠状态,可以使用
android:paddingEnd="70dp"
android:paddingRight="70dp"
像这样:
<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>
答案 3 :(得分:0)
正如NguyễnHoàngAnh所说,将app:titleEnabled
设为false就像魅力一样。
启用该选项后,在使用布局检查器进行一些挖掘之后,始终在TextView
内Toolbar
之前添加可疑的未命名视图,在“向上”按钮之后(如果已启用) )。
因此,即使布局重力正常工作,一些可疑视图也会占用Toolbar
内的所有额外空格。
答案 4 :(得分:0)
您可以在折叠的和 通过以下方式扩展状态
处于展开状态,
app:expandedTitleGravity="center"
处于折叠状态,
app:collapsedTitleGravity="center"
我认为这可能对您有帮助
答案 5 :(得分:0)
将此内容包含在折叠的工具栏xml中
对于折叠:
app:collapsedTitleGravity="center_vertical|center_horizontal"
展开
app:expandedTitleGravity="center_vertical|center_horizontal"