RKS*_*RKS 9 html android webview html5-video
我WebView用来显示包含文本和视频内容的网页。
它按预期正确加载和显示视频。
但是,当我进入视频的全屏视图(我实现了此处给出的全屏视频视图)然后返回时WebView,WebView自动滚动一定数量。
我该如何解决?
请提出一些想法/链接。
我已经在使用兼容的 ScrollChangedListener 了。因此,我决定在 onHideCustomView 之后的一段时间内将视图滚动回此侦听器中。
网页视图:
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;
Run Code Online (Sandbox Code Playgroud)
活动:
mWebview.setOnScrollChangedListener((v, x, y, oldx, oldy) -> {
ArticleWebView webview = (ArticleWebView) v;
if(CustomViewHideTime>0 && System.currentTimeMillis()-CustomViewHideTime<350){
webview.SafeScrollTo(oldx, oldy);
return;
}});
Run Code Online (Sandbox Code Playgroud)
WebChrome客户端:
@Override
public void onHideCustomView() {
CustomViewHideTime = System.currentTimeMillis();
//todo delay and set CustomViewHideTime to 0
}
Run Code Online (Sandbox Code Playgroud)
这可以很好地工作。
| 归档时间: |
|
| 查看次数: |
909 次 |
| 最近记录: |