Android ScrollView如何在滚动到屏幕顶部时保持组件在屏幕上可见?

5

比如,我有一个ScrollView布局如下:

<ScrollView> 
    <Component1>
    <Component2>
    <Component3>
    <Component4>
    ...
</ScrollView>

在ScrollView中,我有一些组件,每个组件都可以是任何东西,如LinearLayout、RelativeLayout、TableRow等等……

现在我想要的是,当<Component2>到达屏幕顶部时,它将保持在屏幕上,而<Component3><Component4>等将继续滚动直到页面底部。当我向下滚动时,只有在所有<Component3>都变得可见之后,<Component2>才会被滚动。我在一个iPhone应用程序上看到过这个效果,想知道如何在Android上实现。

我不知道我是否描述得足够清楚,但它与这个视频相同。

http://www.youtube.com/watch?v=jXCrM1rzLZY&feature=player_detailpage#t=71s

当标签向上滚动到顶部时,它会停留在那里。当像视频中的1:36一样向下滚动时,它会一直停留在那里,直到屏幕下面的所有内容都变得可见。

有人知道如何在Android上实现这个效果吗?


类似Instagram主页活动 - Mehdi Khademloo
1个回答

3
我猜你可以在RelativeLayout中创建一个隐藏的Component2的副本,当Component2的坐标低于ScrollView的顶部(Android从顶部开始绘制)时,将其setVisible(true)。当Component2的坐标高于ScrollView的顶部(.getTop())时,Component2Copy.setVisible(false)。
在更改它们的可见性时,您可能还需要禁用它们。祝你好运。

嘿,我做到了。你的回答给了我一些想法,我完成了它。谢谢。 - user1417127

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接