Java 如何在滚动时调整图像大小?

Java 如何在滚动时调整图像大小?,java,android,Java,Android,我有一个ScrollView,在其中插入了一个ConstraintLayout,其中包含全屏图像视图和一些其他组件 我想要的是,每当我向下滚动时,图像的高度都会缩小(达到一定的限制) 以下是我正在寻找的一个例子: 至于调整大小,经过一些研究,我认为我必须创建一个LayoutParams对象,然后将其影响到ImageView。没问题 但是对于检测滚动事件,我遇到了一些麻烦。我在ScrollView上尝试了setOnScrollChangeListener,但问题是它要求API级别至少为23。因此,

我有一个ScrollView,在其中插入了一个ConstraintLayout,其中包含全屏图像视图和一些其他组件

我想要的是,每当我向下滚动时,图像的高度都会缩小(达到一定的限制)

以下是我正在寻找的一个例子:

至于调整大小,经过一些研究,我认为我必须创建一个LayoutParams对象,然后将其影响到ImageView。没问题

但是对于检测滚动事件,我遇到了一些麻烦。我在ScrollView上尝试了setOnScrollChangeListener,但问题是它要求API级别至少为23。因此,我想知道是否有另一种解决方案也适用于较低级别


我遇到的另一个问题是如何使调整大小与用户的滚动量成比例。

您希望使用折叠工具栏进行协调器布局。这是安卓系统内置的,您不需要任何代码更改。充气机将为布局充气,一切正常

在xml布局文件中,您将需要

 <coordinatorlayout

<Appbar layout
<collapsingtoolbar
<ImageView>  <-- your image goes here
/collapsingtoolbar
/Appbar layout
/coordinatorlayout

<nestedscrollview

<textview> <--Your content that moves up goes here

/nestedscrollview
<floating action button> <-- your example shows one of these buttons but its optional

谢谢,这正是我要找的!