如何在ListView中停止过度滚动?

时间:2014-03-27 19:01:54

标签: android android-listview scroll scrollview overscroll

我有一个简单的列表视图:

<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
    android:choiceMode="singleChoice"
    android:overScrollMode="never"
    android:layout_width="match_parent" android:layout_height="match_parent" />

此列表视图是AdapterView的一部分。

在我的代码中,我致电listView.scrollBy(deltaX,deltaY)。这会导致列表视图过度滚动。如果我改为使用ScrollView,则完全相同的代码不会导致过度滚动。

为什么???

1 个答案:

答案 0 :(得分:0)

如果创建自定义视图而不是从ListView扩展,则可以覆盖overScrollBy函数,如下所示:

@Override
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY,
  boolean isTouchEvent) 
{
    return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX, scrollRangeY, 0, 0, isTouchEvent); 
}