webView scroll滑动事件

public class ScrollWebView extends WebView
{
    private OnScrollChangedCallback mOnScrollChangedCallback;

    public ScrollWebView(final Context context)
    {
        super(context);
    }

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

    public ScrollWebView(final Context context, final AttributeSet attrs, final int defStyle)
    {
        super(context, attrs, defStyle);
    }

    @Override
    protected void onScrollChanged(final int l, final int t, final int oldl, final int oldt)
    {
        super.onScrollChanged(l, t, oldl, oldt);
        if(mOnScrollChangedCallback != null) mOnScrollChangedCallback.onScroll(l, t);
    }

    public OnScrollChangedCallback getOnScrollChangedCallback()
    {
        return mOnScrollChangedCallback;
    }

    public void setOnScrollChangedCallback(final OnScrollChangedCallback onScrollChangedCallback)
    {
        mOnScrollChangedCallback = onScrollChangedCallback;
    }

    /**
     * Impliment in the activity/fragment/view that you want to listen to the webview
     */
    public static interface OnScrollChangedCallback
    {
        public void onScroll(int l, int t);
    }
}


wv = (ScrollWebView) findViewById(R.id.scorllableWebview);
 wv.setOnScrollChangedCallback(new OnScrollChangedCallback(){
    public void onScroll(int l, int t){
      //Do stuff
      Log.d(TAG,"We Scrolled etc...");
    }
 });

猜你喜欢

转载自wang-peng1.iteye.com/blog/1852921
今日推荐