将固定的透明标题附加到ListView?

时间:2011-01-19 15:28:22

标签: android listview

我一直试图让它工作一段时间......有没有办法在listview上放一个透明的固定标题,所以它看起来像这样:

Transparent sticky header

向上滚动时,标题最终会成为常规标题,其下方有第1项。

我想我必须实现onScrollListener并做一些事情,比如第一个可见项是列表中的第2项,开始将listview边距移动1个像素,直到它低于标题?还是有更好的方法?关于如何做出类似事情的任何想法?

2 个答案:

答案 0 :(得分:5)

我会创建一个FrameLayout ...然后先将ListView放入其中,填满屏幕。然后在上面放一个TextView。要在顶部获得所需的行为,可能在列表的位置0处有一个空白元素,或者只是使列表项0的顶部填充具有标题的高度...

这有意义吗? ListView应该在FrameLayout中的TextView下面滚动。

答案 1 :(得分:2)

您可以使用RelativeLayout,因此可以使用某些属性获取Z轴;)

更新

例如使用RelativeLayout:

的RelativeLayout
---- ListView的
---- TransparentHeader

将以您在图片上显示的方式显示。

作为评论:Android按照在xml上定义的顺序放置布局元素,因此,布局底部的小部件将位于顶部。