首页 > 解决方案 > 如何使 Web 图像适合 WebView 内的 Android 屏幕尺寸?在使用 JSON 数据获取网站内容时,使用 restful

问题描述

我正在使用 Rest API 获取 Json 数据。并且仅在 WebView 中显示内容,但 Web 图像在其中以全尺寸显示。我想让图像适合屏幕尺寸。

下面是我的代码:

    content = (WebView)findViewById(R.id.content);
    final WebViewLoader webViewLoader = new WebViewLoader(content);
    webViewLoader.setWebSettings();

    String url = Const.get_content_by_id.replace("POST_ID",String.valueOf(id));

    StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String s) {
            try {
                JSONObject ParentObject = new JSONObject(s);
                webViewLoader.setLoadDataWithBaseUrl(ParentObject.getJSONObject("content").getString("rendered"));

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError volleyError) {

            Toast.makeText(Post.this,"Unable to Load", Toast.LENGTH_LONG).show();
        }
    });

SingletonVolley.getInstance(getApplicationContext()).addToRequestQueue(request);

标签: androidjsonimagerestretrofit

解决方案


我终于通过使用 web 内容设置样式标签来解决它。

webViewLoader.setLoadDataWithBaseUrl("<style>img{display: inline;height: auto;max-width: 100%</style>"+ParentObject.getJSONObject("content").getString("rendered"));

如果有人想添加更多样式,只需在<style></style>之后或之前添加<style>img{display: inline;height: auto;max-width: 100%</style>


推荐阅读