Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何禁用滚动视图的弹出_Android_Android Scrollview - Fatal编程技术网

Android 如何禁用滚动视图的弹出

Android 如何禁用滚动视图的弹出,android,android-scrollview,Android,Android Scrollview,我想禁用scrollview的fling手势,但它似乎不起作用。。我认为创建一个扩展scrollview的基本类和重写onFling方法一样简单。但是eclipse给了我一个删除@Override的错误: 有没有办法禁用fling public class ScrollViewNoFling extends ScrollView { /** * @param context * @param attrs * @param defStyle */

我想禁用scrollview的fling手势,但它似乎不起作用。。我认为创建一个扩展scrollview的基本类和重写
onFling
方法一样简单。但是eclipse给了我一个删除@Override的错误:

有没有办法禁用fling

public class ScrollViewNoFling extends ScrollView {

    /**
     * @param context
     * @param attrs
     * @param defStyle
     */
    public ScrollViewNoFling(Context context) {

        super(context);
        // TODO Auto-generated constructor stub
    }
    public ScrollViewNoFling(Context context, AttributeSet attrs) {

        super(context, attrs);
        // TODO Auto-generated constructor stub
    }
    public ScrollViewNoFling(Context context, AttributeSet attrs, int defStyle) {

        super(context, attrs, defStyle);
        // TODO Auto-generated constructor stub
    }

   @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
    {
        return false;
    }

}

我认为应该是放纵而不是放纵。
请参考官方

除了使用
fling()
而不是
onFling()
,您还需要注意返回值

根据以下文件:

返回

如果事件已消耗,则为true,否则为false


如果要捕获事件而不执行任何操作,请返回true。否则,事件将被传递到其他方法/类以尝试处理它。

我用Override fling方法解决了同样的问题。如果您在ScrollViewNoFling类上重写fling方法,并且没有在此方法上调用super.fling,那么fling将无法处理scrollView

@Override
public void fling (int velocityY)
{
    /*Scroll view is no longer gonna handle scroll velocity.
     * super.fling(velocityY);
    */
}
还要注意,
onFling()
是的一部分。这是一种有效的方法,但在这种情况下不是。