AndroidWebView中汉堡菜单不能使用的问题
创始人
2024-10-12 04:31:37
0
  1. 首先要在WebView的setWebChromeClient()方法中添加如下代码,以支持汉堡菜单的展示及点击事件:

webView.setWebChromeClient(new WebChromeClient() { @Override public boolean onShowFileChooser(WebView webView, ValueCallback filePathCallback, FileChooserParams fileChooserParams) { if (mUploadMessage != null) { mUploadMessage.onReceiveValue(null); mUploadMessage = null; }

    mUploadMessage = filePathCallback;

    Intent intent = fileChooserParams.createIntent();
    try {
        startActivityForResult(intent, REQUEST_SELECT_FILE);
    } catch (ActivityNotFoundException e) {
        mUploadMessage = null;
        Toast.makeText(mActivity, R.string.toast_upload_file_failed, Toast.LENGTH_SHORT).show();
        return false;
    }
    return true;
}

@Override
public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) {
    WebView.HitTestResult result = view.getHitTestResult();
    String data = result.getExtra();
    Context context = view.getContext();
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(data));
    context.startActivity(browserIntent);
    return false;
}

});

  1. 然后在WebView的setWebViewClient()方法中添加如下代码,以支持汉堡菜单在WebView中的正常显示和点击事件:

webView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); mProgressBar.setVisibility(View.VISIBLE); }

@Override
public void onPageFinished(WebView view, String url) {
    super.onPageFinished(view, url);
    mProgressBar.setVisibility(View.GONE);
}

@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
    if (request.getUrl().toString().startsWith("tel:")) { //点击电话号码
        if (ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
            ActivityCompat.requestPermissions(mActivity, new String[]{Manifest.permission.CALL_PHONE}, REQUEST_CALL_PHONE_PERMISSION);

相关内容

热门资讯

透视安卓版"wepo... 1、透视安卓版"wepokerplus万能挂"详细辅助透明教程(俱乐部辅助器透视)。2、wepoke...
透视黑科技"hhpo... 透视黑科技"hhpoker是内部控制吗"详细辅助解说技巧(透视脚本下载攻略);hhpoker是内部控...
透视黑科技"wepo... 透视黑科技"wepoker轻量版透视方法"详细辅助详细教程(透视脚本免费app攻略)准备好在wepo...
透视了解"aapok... 1、透视了解"aapoker俱乐部靠谱吗"详细辅助透明挂教程(辅助脚本攻略)2、进入游戏-大厅左侧-...
透视了解"hhpok... 透视了解"hhpoker透视方法"详细辅助揭秘攻略(可以挂底牌技巧)1、点击下载安装,微扑克wpk插...
透视app"约局吧开... 透视app"约局吧开挂神器是真的吗"详细辅助第三方教程(有透视方法技巧);最新版2024是一款经典耐...
透视了解"wepok... 透视了解"wepoker私人局俱乐部怎么进"详细辅助爆料教程(有挂神器);实战中需综合运用上述技巧,...
透视软件"wepok... 透视软件"wepoker私人局外卦"详细辅助AI教程(正确养号方法技巧)是一款可以让一直输的玩家,快...
透视脚本"we po... 透视脚本"we poker辅助器v3.3"详细辅助安装教程(辅助器激活码透视)准备好在we poke...
透视插件"德州透视脚... 透视插件"德州透视脚本"详细辅助存在挂教程(透视挂底牌攻略);科技安装教程;136704302。相信...