Android webview加载链接显示不完全

如有不对的地方望各位小哥哥小姐姐指导,小女子在此谢过(*^__^*) 嘻嘻……

 

前后对比图,

 

一、先看一下我的webview页面的设置

package com.mobivans.onestrokecharge.activitys;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.annotation.RequiresApi;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import com.mobivans.onestrokecharge.R;
import com.mobivans.onestrokecharge.customerview.LoadingDialog;

import static android.webkit.WebSettings.LOAD_NO_CACHE;

/**
 * @author: 潇潇
 * @create on:  2019/6/14
 * @describe:发现页文章加载链接的webview,里面做读文章获取金币
 */

public class ArticleWebviewActivity extends BaseActivity {

    //    @ViewId(R.id.article_webview)
    WebView webView;
    private WebSettings webSettings;
    private String url;
    LoadingDialog loadingDialog;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_article_webview);
        webView = findViewById(R.id.article_webview);
        loadingDialog = new LoadingDialog(this);
        loadingDialog.show();
        get_intent();
        setWeb();

    }

    private void get_intent() {
        url = getIntent().getStringExtra("url");
    }


    private void setWeb() {
        webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);//支持javascript
        webSettings.setCacheMode(LOAD_NO_CACHE);
        webView.getSettings().setDomStorageEnabled(true);
        webView.requestFocus();
        webView.getSettings().setUseWideViewPort(true);//扩大比例的缩放
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setSupportZoom(true); // 设置可以支持缩放
        webView.getSettings().setBuiltInZoomControls(true);//设置出现缩放工具
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
        }
        //自适应屏幕
//        webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
//        webView.getSettings().setLoadWithOverviewMode(true);
        //如果不设置WebViewClient,请求会跳转系统浏览器
        webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                if (loadingDialog != null) {
                    loadingDialog.dismiss();
                }
            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                //该方法在Build.VERSION_CODES.LOLLIPOP以前有效,从Build.VERSION_CODES.LOLLIPOP起,建议使用shouldOverrideUrlLoading(WebView, WebResourceRequest)} instead
                //返回false,意味着请求过程里,不管有多少次的跳转请求(即新的请求地址),均交给webView自己处理,这也是此方法的默认处理
                //返回true,说明你自己想根据url,做新的跳转,比如在判断url符合条件的情况下,我想让webView加载http://ask.csdn.net/questions/178242
                view.loadUrl(url);
                return false;
            }

            @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                //返回false,意味着请求过程里,不管有多少次的跳转请求(即新的请求地址),均交给webView自己处理,这也是此方法的默认处理
                //返回true,说明你自己想根据url,做新的跳转,比如在判断url符合条件的情况下,我想让webView加载http://ask.csdn.net/questions/178242
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                    view.loadUrl(request.getUrl().toString());
                } else {
                    view.loadUrl(request.toString());
                }
                return false;
            }

        });
        webView.loadUrl(url);
    }


}

然后当我加载某一个链接的时候,却只能显示一点点,然后其他的链接都是没有问题的,检查了一遍代码也没有错误,

然后也是百度了一番,发现网上的并没有解决我的问题

 

二、最后我自己找到了问题的所在:

解决的办法是吧WebView的高度设置为match_parent然后问题就解决了(刚开始我是设置的自适应)

 <WebView
        android:id="@+id/article_webview"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值