gpt4 book ai didi

关闭全屏 View 后的Android WebView Video,webview自动滚动

转载 作者:行者123 更新时间:2023-12-03 13:26:51 24 4
gpt4 key购买 nike

我正在使用 WebView显示具有文本和视频内容的网页。

它按预期正确加载和显示视频。

但是当我进入视频的全屏 View 时(我实现了给定的全屏视频 View here )然后回到 WebView , WebView一定数量的自动滚动。

我该如何解决?

请提出一些想法/链接。

最佳答案

我已经在使用兼容的 ScrollChangedListener。所以我决定在 onHideCustomView 之后的一段时间内将 View 滚动回这个监听器。

网页浏览:

public interface OnScrollChangedListener {
void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY);
}

public void SafeScrollTo(int x, int y) {
OnScrollChangedListener mScrollChanged = mOnScrollChangeListener;
mOnScrollChangeListener =null;
scrollTo(x, y);
mOnScrollChangeListener =mScrollChanged;
}

@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
if(mOnScrollChangeListener !=null)
mOnScrollChangeListener.onScrollChange(this,l,t,oldl,oldt);
}

public void setOnScrollChangedListener(OnScrollChangedListener onSrollChangedListener) {
mOnScrollChangeListener =onSrollChangedListener;
}

OnScrollChangedListener mOnScrollChangeListener;

Activity :
mWebview.setOnScrollChangedListener((v, x, y, oldx, oldy) -> {
ArticleWebView webview = (ArticleWebView) v;
if(CustomViewHideTime>0 && System.currentTimeMillis()-CustomViewHideTime<350){
webview.SafeScrollTo(oldx, oldy);
return;
}});

WebChrome客户端:
        @Override
public void onHideCustomView() {
CustomViewHideTime = System.currentTimeMillis();
//todo delay and set CustomViewHideTime to 0
}

这可以正常工作。

关于关闭全屏 View 后的Android WebView Video,webview自动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41331940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com