Android WebView各项使用说明¶
2023-3-30 更新例子
- 2023-3-30 更新例子
- 2022-1-16 创建文档
记录一些webview的设置和操作。
禁止webview处理长按事件¶
设置OnLongClickListener把长按事件消费掉。
web.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
return true;
}
});
改变字体大小¶
字体大小的枚举。
public static enum TextSize {
SMALLEST(50),
SMALLER(75),
NORMAL(100),
LARGER(125),
LARGEST(150);
int value;
private TextSize(int var3) {
this.value = var3;
}
}
获取WebSettings
,然后设置字体大小。
m3u8视频¶
Android webview播放不了m3u8视频。
NotAllowedError: play can only be initiated by a user gesture¶
设置webview
webview打开URL,跳去了系统自带的浏览器¶
这可能是由于在Android WebView中没有正确配置WebSettings或WebViewClient所导致的。请尝试以下几个步骤:
1.确保已启用JavaScript:
2.设置一个新的WebViewClient:
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
如果上述方法仍无法解决问题,可以尝试添加以下标记以确保WebView不会跳转到系统自带的浏览器:
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
view.loadUrl(request.getUrl().toString());
}
else {
view.loadUrl(request.toString());
}
return false;
}
});
webView.setWebChromeClient(new WebChromeClient() {
@Override
public void onPermissionRequest(PermissionRequest request) {
request.grant(request.getResources());
}
});
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setAllowContentAccess(true);
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
webView.getSettings().setAllowFileAccessFromFileURLs(true);
参考¶
本站说明
一起在知识的海洋里呛水吧。广告内容与本站无关。如果喜欢本站内容,欢迎投喂作者,谢谢支持服务器。如有疑问和建议,欢迎在下方评论~