动态停止列表视图的滚动

时间:2014-10-28 18:17:32

标签: android android-listview

当我的列表视图滚动然后我触摸屏幕上的其他位置时,列表视图滚动应该停止。那么有没有办法根据某些条件停止listView的垂直滚动?

我可以在编译之前禁用滚动和onTouch()我可以返回true以避免滚动但是我没有触及它就停止它。

1 个答案:

答案 0 :(得分:0)

可以使用反射完成。在某个地方找到了这段代码。

try {
        Field field = android.widget.AbsListView.class.getDeclaredField("mFlingRunnable");
        field.setAccessible(true);
        Object flingRunnable = field.get(listView);
        if (flingRunnable != null) {
              Method method = Class.forName("android.widget.AbsListView$FlingRunnable").getDeclaredMethod("endFling");
              method.setAccessible(true);
              method.invoke(flingRunnable);
           }
   } catch (Exception e) {}