【发布时间】:2019-12-03 15:43:43
【问题描述】:
我正在自定义Collapsing Toolbar Layout。折叠部分完成,工具栏也做了相应的调整。唯一缺少的是我想更改我的Toolbars 背景因为 Collapsing Toolbar Layout 正在崩溃,即逐渐增加我的Toolbars 背景的不透明度。
我已经看到很多似乎在 Java 中做我想做的事情的答案。不幸的是,我(根本没有)Java 基础知识,最有意义的一个在这里:here。我尝试将上述代码粘贴到我的 Android Studio IDE 中,但它不起作用(它并没有真正覆盖任何东西)。供参考,该帖子的代码在这里:
@Override
public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) {
//measuring for alpha
int toolBarHeight = toolbar.getMeasuredHeight();
int appBarHeight = appBarLayout.getMeasuredHeight();
Float f = ((((float) appBarHeight - toolBarHeight) + verticalOffset) / ( (float) appBarHeight - toolBarHeight)) * 255;
fading_backdrop.getBackground().setAlpha(255 - Math.round(f));
}
我同样想这样做,即我希望能够听到我的AppBarLayout 的 Y 偏移量来逐渐改变我的Toolbars 背景。
我有以下 activity_xml 文件(以防万一):
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout ...>
<com.google.android.material.appbar.AppBarLayout
... >
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsingToolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_collapsing_toolbar"
app:collapsedTitleTextAppearance="@style/CollapsedCollapsingToolbarText"
app:expandedTitleTextAppearance="@style/ExpandedCollapsingToolbarText"
app:layout_scrollFlags="exitUntilCollapsed|scroll">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_collapsing_toolbar"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.75" />
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/Theme.AppCompat.Light">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
... />
<ImageView
... />
<ImageView
... />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
我如何收听一些AppBarLayout 偏移量变化,以便在Collapsing Toolbar Layout 在Kotlin 中崩溃时逐渐改变Toolbars 背景?
【问题讨论】:
标签: android android-layout kotlin android-collapsingtoolbarlayout android-appbarlayout