@@ -0,0 +1,1864 @@
+package cn.diaovision.omnicontrol.widget;%0A%0Aimport android.content.Context;%0Aimport android.graphics.Rect;%0Aimport android.graphics.drawable.Drawable;%0Aimport android.util.AttributeSet;%0Aimport android.view.MotionEvent;%0A%0A/**%0A * Created by TaoYimin on 2017/6/13.%0A * %E5%8F%AA%E8%83%BD%E6%8B%96%E5%8A%A8%E8%B0%83%E6%95%B4%E8%BF%9B%E5%BA%A6%EF%BC%8C%E4%B8%8D%E8%83%BD%E7%82%B9%E5%87%BB%E8%B0%83%E6%95%B4%E8%BF%9B%E5%BA%A6%E7%9A%84VerticalSeekBar(%E4%B8%BA%E4%BA%86%E8%A7%A3%E5%86%B3%E4%B8%8EHorizontalScrollView%E7%9A%84%E6%BB%91%E5%8A%A8%E5%86%B2%E7%AA%81)%0A */%0A%0Apublic class VerticalSeekBar extends com.h6ah4i.android.widget.verticalseekbar.VerticalSeekBar %7B%0A%0A    //%E5%AD%98%E6%94%BE%E6%8B%96%E5%9D%97%E7%9A%84%E7%9F%A9%E5%BD%A2%0A    private Rect mRect;%0A%0A    //%E7%A6%81%E6%AD%A2%E7%82%B9%E5%87%BB%E7%9A%84%E6%97%B6%E5%80%99%E6%9C%89%E8%BF%9B%E5%BA%A6%E6%95%88%E6%9E%9C%0A    private boolean isBanClick = true;%0A%0A    public VerticalSeekBar(Context context) %7B%0A        this(context, null);%0A    %7D%0A%0A    public VerticalSeekBar(Context context, AttributeSet attrs) %7B%0A        super(context, attrs);%0A        init();%0A    %7D%0A%0A    public VerticalSeekBar(Context context, AttributeSet attrs, int defStyle) %7B%0A        super(context, attrs, defStyle);%0A        init();%0A    %7D%0A%0A    private void init() %7B%0A        // %E5%BE%97%E5%88%B0%E6%8B%96%E5%9D%97%E5%9B%BE%E7%89%87%0A        Drawable drawable = this.getThumb();%0A        // %E5%BE%97%E5%88%B0%E6%94%BE%E6%8B%96%E5%BF%AB%E5%9B%BE%E7%89%87%E7%9A%84%E7%9F%A9%E5%BD%A2%E3%80%82%0A        mRect = drawable.getBounds();%0A    %7D%0A%0A    @Override%0A    public boolean onTouchEvent(MotionEvent ev) %7B%0A        float x = ev.getX();%0A        float y = ev.getY();%0A        switch (ev.getAction()) %7B%0A            case MotionEvent.ACTION_DOWN:%0A                if (isBanClick) %7B%0A                    return banAction(x, y);%0A                %7D%0A                break;%0A            case MotionEvent.ACTION_MOVE:%0A                break;%0A            case MotionEvent.ACTION_UP:%0A                break;%0A            default:%0A                break;%0A        %7D%0A        return super.onTouchEvent(ev);%0A    %7D%0A%0A    private boolean banAction(float x, float y) %7B%0A        if (mRect != null) %7B%0A            if (mRect.contains((int) (x), (int) (y))) %7B%0A                return true;%0A            %7D else %7B%0A                return false;%0A            %7D%0A        %7D else %7B%0A            return true;%0A        %7D%0A    %7D%0A%7D%0A

solve sliding conflict between VerticalSeekBar and HorizontalScrollView