Search in sources :

Example 36 with WebChromeClient

use of android.webkit.WebChromeClient in project LookLook by xinghongfei.

the class ZhihuDescribeActivity method initView.

private void initView() {
    mToolbar.setTitleMargin(20, 20, 0, 10);
    mToolbar.setNavigationIcon(R.drawable.ic_arrow_back);
    mToolbar.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            mNest.smoothScrollTo(0, 0);
        }
    });
    mToolbar.setNavigationOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            expandImageAndFinish();
        }
    });
    mTranslateYTextView.setText(title);
    WebSettings settings = wvZhihu.getSettings();
    settings.setJavaScriptEnabled(true);
    settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
    settings.setLoadWithOverviewMode(true);
    settings.setBuiltInZoomControls(true);
    //settings.setUseWideViewPort(true);造成文字太小
    settings.setDomStorageEnabled(true);
    settings.setDatabaseEnabled(true);
    settings.setAppCachePath(getCacheDir().getAbsolutePath() + "/webViewCache");
    settings.setAppCacheEnabled(true);
    settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
    wvZhihu.setWebChromeClient(new WebChromeClient());
}
Also used : WebSettings(android.webkit.WebSettings) WebChromeClient(android.webkit.WebChromeClient) BindView(butterknife.BindView) View(android.view.View) WebView(android.webkit.WebView) NestedScrollView(android.support.v4.widget.NestedScrollView) ParallaxScrimageView(com.looklook.xinghongfei.looklook.widget.ParallaxScrimageView) TranslateYTextView(com.looklook.xinghongfei.looklook.widget.TranslateYTextView)

Example 37 with WebChromeClient

use of android.webkit.WebChromeClient in project BookReader by JustWayward.

the class ProgressWebView method initWebview.

private void initWebview(String url) {
    mWebView.addJavascriptInterface(this, "android");
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    // 设置可以访问文件
    webSettings.setAllowFileAccess(true);
    // 设置可以支持缩放
    webSettings.setSupportZoom(true);
    // 设置默认缩放方式尺寸是far
    webSettings.setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
    // 设置出现缩放工具
    webSettings.setBuiltInZoomControls(false);
    webSettings.setDefaultFontSize(16);
    mWebView.loadUrl(url);
    // 设置WebViewClient
    mWebView.setWebViewClient(new WebViewClient() {

        // url拦截
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            // 使用自己的WebView组件来响应Url加载事件,而不是使用默认浏览器器加载页面
            view.loadUrl(url);
            // 相应完成返回true
            return true;
        // return super.shouldOverrideUrlLoading(view, url);
        }

        // 页面开始加载
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            mProgressBar.setVisibility(View.VISIBLE);
            super.onPageStarted(view, url, favicon);
        }

        // 页面加载完成
        @Override
        public void onPageFinished(WebView view, String url) {
            mProgressBar.setVisibility(View.GONE);
            super.onPageFinished(view, url);
        }

        // WebView加载的所有资源url
        @Override
        public void onLoadResource(WebView view, String url) {
            super.onLoadResource(view, url);
        }

        @Override
        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
            //				view.loadData(errorHtml, "text/html; charset=UTF-8", null);
            super.onReceivedError(view, errorCode, description, failingUrl);
        }
    });
    // 设置WebChromeClient
    mWebView.setWebChromeClient(new WebChromeClient() {

        @Override
        public // 处理javascript中的alert
        boolean onJsAlert(WebView view, String url, String message, final JsResult result) {
            return super.onJsAlert(view, url, message, result);
        }

        @Override
        public // 处理javascript中的confirm
        boolean onJsConfirm(WebView view, String url, String message, final JsResult result) {
            return super.onJsConfirm(view, url, message, result);
        }

        @Override
        public // 处理javascript中的prompt
        boolean onJsPrompt(WebView view, String url, String message, String defaultValue, final JsPromptResult result) {
            return super.onJsPrompt(view, url, message, defaultValue, result);
        }

        // 设置网页加载的进度条
        @Override
        public void onProgressChanged(WebView view, int newProgress) {
            mProgressBar.setProgress(newProgress);
            super.onProgressChanged(view, newProgress);
        }

        // 设置程序的Title
        @Override
        public void onReceivedTitle(WebView view, String title) {
            super.onReceivedTitle(view, title);
        }
    });
    mWebView.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (event.getAction() == KeyEvent.ACTION_DOWN) {
                if (keyCode == KeyEvent.KEYCODE_BACK && mWebView.canGoBack()) {
                    // 表示按返回键
                    // 后退
                    mWebView.goBack();
                    // 已处理
                    return true;
                }
            }
            return false;
        }
    });
}
Also used : View(android.view.View) WebView(android.webkit.WebView) JsResult(android.webkit.JsResult) KeyEvent(android.view.KeyEvent) Bitmap(android.graphics.Bitmap) WebSettings(android.webkit.WebSettings) WebChromeClient(android.webkit.WebChromeClient) WebView(android.webkit.WebView) JsPromptResult(android.webkit.JsPromptResult) WebViewClient(android.webkit.WebViewClient)

Example 38 with WebChromeClient

use of android.webkit.WebChromeClient in project wechat by motianhuo.

the class WebViewActivity method initView.

@SuppressLint("SetJavaScriptEnabled")
@Override
protected void initView() {
    Bundle bundle = getIntent().getExtras();
    if (bundle != null && bundle.getString(Constants.URL) != null) {
        strurl = "";
        strurl = bundle.getString(Constants.URL);
    }
    if (bundle != null && bundle.getString(Constants.Title) != null) {
        txt_title.setText(bundle.getString(Constants.Title));
    }
    if (!TextUtils.isEmpty(strurl)) {
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.setWebViewClient(new WeiboWebViewClient());
        mWebView.setWebChromeClient(new WebChromeClient());
        mWebView.loadUrl(strurl);
    }
}
Also used : Bundle(android.os.Bundle) WebChromeClient(android.webkit.WebChromeClient) SuppressLint(android.annotation.SuppressLint)

Example 39 with WebChromeClient

use of android.webkit.WebChromeClient in project android_frameworks_base by DirtyUnicorns.

the class LooperAcceleration method makeView.

private View makeView() {
    LinearLayout layout = new LinearLayout(this);
    layout.addView(new IsAcceleratedView(this), LayoutParams.MATCH_PARENT, 60);
    if (INCLUDE_WEBVIEW) {
        WebView wv = new WebView(this);
        wv.setWebViewClient(new WebViewClient());
        wv.setWebChromeClient(new WebChromeClient());
        wv.loadUrl("http://www.webkit.org/blog-files/3d-transforms/poster-circle.html");
        layout.addView(wv, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
    }
    return layout;
}
Also used : WebChromeClient(android.webkit.WebChromeClient) WebView(android.webkit.WebView) LinearLayout(android.widget.LinearLayout) WebViewClient(android.webkit.WebViewClient)

Aggregations

WebChromeClient (android.webkit.WebChromeClient)39 WebView (android.webkit.WebView)32 WebViewClient (android.webkit.WebViewClient)29 WebSettings (android.webkit.WebSettings)13 View (android.view.View)12 Bitmap (android.graphics.Bitmap)9 SuppressLint (android.annotation.SuppressLint)6 JsResult (android.webkit.JsResult)6 WebResourceRequest (android.webkit.WebResourceRequest)6 Intent (android.content.Intent)5 LinearLayout (android.widget.LinearLayout)5 Uri (android.net.Uri)4 KeyEvent (android.view.KeyEvent)4 JsPromptResult (android.webkit.JsPromptResult)4 WebResourceError (android.webkit.WebResourceError)4 WebResourceResponse (android.webkit.WebResourceResponse)3 InjectView (butterknife.InjectView)3 IOException (java.io.IOException)3 SharedPreferences (android.content.SharedPreferences)2 Bundle (android.os.Bundle)2