gpt4 book ai didi

ScrollView 的 Android 过度滚动

转载 作者:行者123 更新时间:2023-11-30 02:54:28 25 4
gpt4 key购买 nike

asked之前关于ListView中的OverScroll。默认 overScroll 在许多设备上不起作用(例如:Samsung Galaxy 2、HTC One X)。所以我做了OverScrollListView

但现在需要为 ScrollView 做同样的事情。我制作了顶部滚动的技巧(通过在 overScrollBy 中使用正数)。但是,当我尝试对底部执行相同操作时(通过在 overScrollBy 中使用负数),overscroll ScrollView 滚动到顶部位置。

有人能说说为什么吗?

附言我也试过this .但即使在顶部(或底部)位置,滚动条指示器也显示在中间某处。这让用户感到困惑...

最佳答案

好吧,我想我做到了。

但这真的很奇怪。

我有在 ACTION_MOVE 中调用的过度滚动方法:

private void pullDown(int deltaY, int lastY) {
overScrollBy(0, mSlowEffect ? (int)getOverScrollYWithSlow(deltaY) : deltaY, 0, lastY, 5, 5, 0, mMaxYOverscrollDistance, true);
}

对于 ListView 的过度滚动,我只是将 deltaY 设置为 pullDown(lastScroll, 0);

它同时适用于:顶部和底部过度滚动。

但对于 ScrollView 它不适用于底部滚动。所以我们也应该向这个方法发送当前的 scrollY 位置,比如 pullDown(lastScroll , lastY);

我在 Github 上分享了整个代码, 如果有人感兴趣的话。

关于ScrollView 的 Android 过度滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23520394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com