4

我怎样才能拉出这样的列表视图?

在此处输入图像描述 Listview有一个表头是歌手头像,当下拉listview时,图片被拉长。pic1正常,pic2拉低。

4

3 回答 3

4

您不需要任何类型的空视图或不可见视图。

基本上,您ListView使用addHeaderView(). 之后,您覆盖

    overScrollBy(int deltaX, int deltaY, int scrollX,
        int scrollY, int scrollRangeX, int scrollRangeY,
        int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent)

的方法ListView。您可以通过参数操作在overScrollBy方法中作为标题添加的视图的高度。deltaY

如果您想避免所有艰苦的工作,请检查此库https://github.com/Gnod/ParallaxListView

于 2014-05-14T21:21:06.680 回答
0

您可以为此Gnod/ParallaxListView缩放使用视差效果,并且您需要ManuelPeinado提供的解决方案

Acton bar fading 或 fade action bar 你可以从这里查看

它在滚动列表视图时缩放图像。我认为这是您问题的一个合适的解决方案。

希望对你有帮助

于 2014-06-22T11:46:20.733 回答
0

实现这一点并不难。您可以添加带有图像高度的透明空标题(处于展开状态)。在 listView 下添加带有图像的布局。您的布局将如下所示:

<FrameLayout>
  <LinearLayout> //layout with your image and controlls
  </LinearLayout>
  <ListView/> //your listView
</FrameLayout>

之后,您必须在 listView 的滚动更改侦听器上实现。您必须确定屏幕上的透明标题并设置控件布局的 Y 位置。使用此技术,您可以在列表视图中创建不同的标题行为(视差效果、褪色动画或其他)

于 2014-05-12T13:10:54.320 回答