您当前的位置: 首页 >  webview

蓝不蓝编程

暂无认证

  • 0浏览

    0关注

    706博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

解决ViewPager嵌套WebView时滑动冲突问题

蓝不蓝编程 发布时间:2020-05-15 17:12:15 ,浏览量:0

问题描述

当ViewPager里嵌套WebView时,默认WebView是处理不了滑动事件的.这样的话,如果WebView里内容一屏展示不完,就没法查看完整内容了.

解决方案

定制WebView,覆写onTouchEvent和onOverScrolled两个方法. 这样当WebView内部内容没有滑动到最边上时,滑动事件都在自己内部处理;如果到了边上,就交给ViewPager来做翻页.

class MyWebView(context: Context, attrs: AttributeSet) : WebView(context, attrs) {
    override fun onTouchEvent(event: MotionEvent): Boolean {
        if (event.action == MotionEvent.ACTION_DOWN) {
            parent.requestDisallowInterceptTouchEvent(true)
        }
        return super.onTouchEvent(event)
    }

    override fun onOverScrolled(scrollX: Int, scrollY: Int, clampedX: Boolean, clampedY: Boolean) {
        if (clampedX) {
            parent.requestDisallowInterceptTouchEvent(false)
        }
        super.onOverScrolled(scrollX, scrollY, clampedX, clampedY)
    }
}
参考资料

https://www.codercto.com/a/56157.html

关注
打赏
1639405877
查看更多评论
立即登录/注册

微信扫码登录

0.1061s