如何通知图库有关ScrollView中发生的触摸事件?

时间:2012-02-28 22:14:53

标签: java android

我有以下自定义类。目前,ScrollView的滚动工作正常。如果我在ScrollView中覆盖onTouchEvent并使其返回false,则Gallery工作正常,但ScrollView滚动没有。我怎样才能使它们一起工作?

这是扩展图库的CardGallery类:

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

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

    @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
        // TODO Auto-generated method stub
        return super.onFling(e1, e2, velocityX, velocityY);
        //return false;
    }

    @Override
    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
        // TODO Auto-generated method stub
        return super.onScroll(e1, e2, distanceX, distanceY);
        //return false;
    }

    @Override
    public boolean onSingleTapUp(MotionEvent e) {
        // TODO Auto-generated method stub
        return super.onSingleTapUp(e);
    }
}

这是扩展ScrollView的CardScrollView类:

public class CardScrollView extends ScrollView {
    public CardScrollView(Context context) {
        super(context);
    }

    public CardScrollView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }
}

1 个答案:

答案 0 :(得分:0)

您是否尝试覆盖Gallery类中的onTouchEvent以返回false?

AFAIK,如果你覆盖一个android事件方法并返回true,Android会认为你已经完全处理了这个事件。如果返回false,则事件将被传递给下一个处理程序。