需要在 colapsinglayout 中更改 imageView 的 alpha

Need to change alpha of imageView in colapsinglayout

我在折叠布局中有工具栏、选项卡布局和图像视图。我需要将该图像的 alpha 更改为等于该图像视图的折叠状态。这意味着 ->

图像完全隐藏:alpha = 0%

图像 50% 滚动:alpha = 50%

图像完全显示:alpha = 100%

不幸的是,我还没有找到任何 xml 参数可以影响这个。有什么简单的解决方案吗?

您可以根据需要尝试一些操作。

如果您正在寻找一个简单的解决方案,您可以使用 CollapsingToolbarLayout 上的 app:contentScrim XML 属性来实现您正在寻找的效果。参见:

如果这还不够,一个更 "correct" 的解决方案将涉及添加一个 OnOffsetChangedListener 并使用它来计算和应用您的 ImageView 的 alpha 变化。参见:

此外,如果您有一些布局,您可以像这样使用滚动侦听器:

appBarLayout.addOnOffsetChangedListener((appBarLayout, verticalOffset) -> {
            float offsetAlpha = (appBarLayout.getY() / appBarLayout.getTotalScrollRange());
            int value = 255 - (int)(255 * offsetAlpha * -1);
            toolbarTotalContainer.getBackground().setAlpha(value);
        });

其中 toolbarTotalContainer 是一些视图的容器。