【发布时间】:2011-01-20 00:20:10
【问题描述】:
我一直在努力让它工作一段时间......有没有办法在列表视图上放置一个透明的固定标题,所以它看起来有点像这样:
当您向上滚动时,标题最终将是一个常规标题,其下方有项目 1。
我想我必须实现 onScrollListener 并做一些事情,比如当第一个可见项目是列表中的项目 2 时,开始将列表视图边距移动 1 个像素,直到它低于标题?还是有更好的方法?关于如何做这样的事情有什么想法吗?
【问题讨论】:
我一直在努力让它工作一段时间......有没有办法在列表视图上放置一个透明的固定标题,所以它看起来有点像这样:
当您向上滚动时,标题最终将是一个常规标题,其下方有项目 1。
我想我必须实现 onScrollListener 并做一些事情,比如当第一个可见项目是列表中的项目 2 时,开始将列表视图边距移动 1 个像素,直到它低于标题?还是有更好的方法?关于如何做这样的事情有什么想法吗?
【问题讨论】:
我会制作一个 FrameLayout...并首先将您的 ListView 放入其中,填满屏幕。然后在上面放一个 TextView 。要在顶部获得所需的行为,可能在列表的位置 0 处有一个空白元素,或者只是使列表项 0 的顶部填充具有标题的高度...
这有意义吗? ListView 应该在 FrameLayout 中的 TextView 下方滚动。
【讨论】:
addHeaderView() 来添加与标题大小相同的空白视图,而不是仅仅添加一个空白元素。
您可以为此使用RelativeLayout,因此您可以使用一些属性获取Z轴;)
更新:
例如使用RelativeLayout:
相对布局
----列表视图
----透明页眉
将以您在图像上显示的方式出现。
作为评论:Android 按照它们在 xml 中定义的顺序放置布局元素,因此,布局底部的小部件将位于顶部。
【讨论】: