android - 在 CollapsingToolbarLayout 中设置 minHeight 没有任何效果

标签 android xml android-layout material-design android-toolbar

我目前遇到的关于 CollapsingToolbarLayout 的主要问题是,无论我尝试什么,我的工具栏的 minHeight 属性都没有任何效果。

我想要的结果是这样的: (CollapsingToolbarLayout 具有一定的展开高度和一定的折叠高度(示例中为 180dp),而标题折叠或保持在顶部)

enter image description here

但无论我做什么,标题有时都在中间,不会完全折叠,或者 minHeight 无论如何都会被忽略。我尝试为 AppBarLayout、CollapsingToolbarLayout、工具栏本身、任何内容等设置 minHeight,也尝试使用在网络上找到的不同方法,但没有成功。

这是基本的 xml:

<android.support.design.widget.AppBarLayout
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        android:minHeight="180dp">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fitsSystemWindows="true"
            app:contentScrim="@android:color/transparent"
            app:expandedTitleGravity="bottom"
            app:expandedTitleTextAppearance="@style/TextAppearence.App.ToolbarTitle"
            app:layout_scrollFlags="scroll|exitUntilCollapsed"
            app:statusBarScrim="@android:color/transparent">

            <com.xxxxxx.custom.Banner
                android:id="@+id/parallax_image"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:adjustViewBounds="true"
                android:fitsSystemWindows="true"
                android:scaleType="centerCrop"
                android:src="@drawable/xxxxxxxx"
                app:layout_collapseMode="parallax"
                app:layout_collapseParallaxMultiplier="0.6"
                app:layout_scrollFlags="scroll" />

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                android:minHeight="180dp"
                app:layout_collapseMode="pin" />

        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>

我希望这些内容足以解释我的问题。 感谢任何帮助,谢谢!

最佳答案

这个很简单。只需将 Toolbar 的底部边距设置为您希望在折叠版本中保留的任何空间。

这背后的原因很简单。 CollapsingToolbarLayout 继承自 FrameLayout,它将图像堆叠在一起。在考虑折叠边界时,它唯一考虑的是工具栏高度及其顶部/底部边距。

关于android - 在 CollapsingToolbarLayout 中设置 minHeight 没有任何效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37556707/

相关文章:

Android 在从另一个 Activity 返回并重新打开应用程序时保存动态添加的 viewpager 的 fragment

android - 从左向右滑动时,无论在哪里,如何显示DrawerLayout?

javascript - React Native 从 android res 导入音频文件

android - 触摸按钮更改形状中的文本颜色

java - 在将我的相对布局更改为 Linearlayout 时,它在 TTS 的 textview 上抛出空指针异常

Android:如何仅为我的应用设置密码/PIN?

xml - 如何替换文本中的一些xml标签

android - 高亮显示的 EditText 文本颜色

python - 获取当前记录id

java - 单击菜单后调用另一个 Activity