gpt4 book ai didi

android - 如何将布局固定在 CollapsingToolbarLayout 中?

转载 作者:行者123 更新时间:2023-12-05 00:06:35 28 4
gpt4 key购买 nike

我正在尝试创建一个 CollapsingToolbarLayout具有三个元素,其中只有一个标记为 pin和其他人 parallax .

但是所有元素总是折叠

<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<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/holo_red_light"
android:background="@android:color/holo_purple"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed">

<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
app:layout_collapseMode="parallax"
app:srcCompat="@drawable/bg_wave" />

<com.example.ui.StatementHeaderView
android:id="@+id/statementHeaderView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_collapseMode="parallax" />

<include layout="@layout/toolbar_statement"
app:layout_collapseMode="pin" />

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

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

toolbar_statement替换 Android 工具栏的简单布局:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
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="@dimen/height_main_toolbar"
android:background="@color/toolbarStatement">

<ImageView
android:id="@+id/button_back"
android:layout_width="@dimen/height_main_toolbar"
android:layout_height="@dimen/height_main_toolbar"
android:layout_gravity="start|center_vertical"
android:padding="12dp"
app:srcCompat="@drawable/slider_left" />

<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textColor="@android:color/white"
android:textSize="16sp"
android:text="@string/nav_balance_sheet" />

<ImageView
android:id="@+id/button_calendar"
android:layout_width="@dimen/height_main_toolbar"
android:layout_height="@dimen/height_main_toolbar"
android:layout_gravity="end|center_vertical"
android:padding="12dp"
app:srcCompat="@drawable/ic_calendar" />

</FrameLayout>

如果toolbar_statementandroid.support.v7.widget.Toolbar 取代, 元素已正确固定。

是否意味着只有Toolbar可以固定元素?

最佳答案

the developer guide for <include> ,在“使用 <include> 标签”部分的末尾有一条注释:

You can also override all the layout parameters (any android:layout_* attributes) of the included layout's root view by specifying them in the <include/> tag. For example:

<include android:id="@+id/news_title"
android:layout_width="match_parent"
android:layout_height="match_parent"
layout="@layout/title"/>

However, if you want to override layout attributes using the <include> tag, you must override both android:layout_height and android:layout_width in order for other layout attributes to take effect.

您的 include 标记没有指定 layout_height 或 layout_width,但您试图覆盖布局参数 (collapseMode)。我怀疑如果您将这两个属性添加到您的 include 标记中,问题就会得到解决。

关于android - 如何将布局固定在 CollapsingToolbarLayout 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51792578/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com