android - CollapsingToolbarLayout 副标题

标签 android android-layout androiddesignsupport

我可以设置CollapsingToolbarLayout 的标题吗?通过setTitle方法?

还有设置字幕的方法吗?

最佳答案

如果您希望字幕在 AppBar 完全折叠时转到 Toolbar,您应该创建您的自定义 CoordinatorLayout.Behaviour,如下所示: Github Guide

但是,如果您只想在 AppBar 展开时标题后面的文字较小,您可以尝试以下布局:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">
    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:fitsSystemWindows="true"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginBottom="160dp"
            app:expandedTitleMarginEnd="64dp"
            app:expandedTitleMarginStart="48dp"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">
            <ImageView
                android:id="@+id/header"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/quila2"
                android:fitsSystemWindows="true"
                android:scaleType="centerCrop"
                app:layout_collapseMode="parallax" />
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:textSize="16sp"
                android:textColor="@android:color/white"
                android:layout_marginBottom="32dp"
                android:layout_marginEnd="64dp"
                android:layout_marginStart="48dp"
                app:layout_collapseMode="parallax"
                android:layout_gravity="bottom"
                android:text="Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran Lorem Ipsum Iran "/>
            <android.support.v7.widget.Toolbar
                android:id="@+id/anim_toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:layout_collapseMode="pin"
                app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>

    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scrollbars="none"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:lineSpacingExtra="8dp"
            android:text="@string/lorem"
            android:textSize="18sp"/>

    </android.support.v4.widget.NestedScrollView>

    <android.support.design.widget.FloatingActionButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:clickable="true"
        android:src="@drawable/abc_ic_search_api_mtrl_alpha"
        app:layout_anchor="@+id/appbar"
        app:layout_anchorGravity="bottom|right|end" />

</android.support.design.widget.CoordinatorLayout>

请注意,这里我将 AppBar 高度设置为 300dp 并且 app:expandedTitleMarginBottom160dp 所以标题不会下降并与输出字幕冲突。在此示例中,您应该使用 collapsingToolbarTitle.setTitle("My Title"); 方法在运行时动态设置 CollapsingToolbarTitle

结果会是这样的:

enter image description here

关于android - CollapsingToolbarLayout 副标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31194280/

相关文章:

android - 使用 XML 作为可绘制对象时遇到 "trying to use a recycled bitmap"异常

android - 我可以为 android-support-design 小部件设置应用程序全局自定义样式吗?

android - Resources$NotFoundException : If the resource you are trying to use is a vector resource, 您可能以不受支持的方式引用它

android - 如何更改导航 View 项目的文本大小?

java - 如何获取 JSESSIONID cookie

android - 以编程方式创建相对布局

java - 尽管为JavaVersion.VERSION_1_7进行了编译,但不支持的类文件版本52.0

android - 如何解决viewpager android中的空对象引用

java - 使用 Writer 发送带有韩语文本的电子邮件输出垃圾

android - 应用程序因配置更改而崩溃