android - HTML 图表不适合小的 Android WebView

标签 android html css android-webview chart.js

我有一个 WebView,其中宽度和高度为 25dp。在这个小 WebView 中,我想显示来自 Chart.js 的圆图,但它不会调整大小以适应我创建的小 WebView。

圆形图表的 HTML:

<!doctype html>
<html>
    <head>
        <script src="chart.min.js"></script>
        <style>
            html, body
        {
            height: 100%;
        }
    </style>
</head>
<body>
    <canvas id="myChart" style="width:100%; height:80%;"></canvas>      

    <script>

        var chartData = [
  dataprotein,
  datafat,
  datacarb
];

        var data = {
        datasets: [{
                borderWidth: 0,
                data: chartData,
                    backgroundColor: [
                        '#FF604E',
                        '#4666FF',
                        '#47CC6F',
                    ]

            }],

        };

        var ctx = document.getElementById('myChart').getContext('2d');
        var chart = new Chart(ctx, {
            // The type of chart we want to create
            type: 'pie',

            // The data for our dataset
            data: data
        });

    </script>
</body>

最佳答案

如果图表是您在 webview 中加载的唯一内容。您可以在获取 webview 的设置时使用 setLoadWithOverviewMode 使您的 webview 进入 Overview 模式,这意味着 html 内容的宽度将被设置为适合您的屏幕。你可以查看完整的细节here

代码应该是这样的。 (记得在将 HTML 内容加载到 webview 之前设置它)

webView.getSettings().setJavaScriptEnabled(true); //enable it since you're using js to create your chart
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); 
webView.getSettings().setDomStorageEnabled(true); //incase you're using some DOM in your js
webView.getSettings().setLoadWithOverviewMode(true); //This code load your webview into overview mode, fit your html to the screen width

然后,最后将您的 HTML 加载到您的 webview

关于android - HTML 图表不适合小的 Android WebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48192479/

相关文章:

android - 如何以编程方式处理 WiFi 到移动网络的切换?

javascript - 单击按钮后如何将具有多个类的数据属性值输入到 div?

php - 在一行中显示文本、文本字段和按钮

html - :first-child is not working to select the first h4 element

java - recyclerview 在滚动条上返回相同的位置

android - JNI 和多线程

安卓 NDK : getting the backtrace

javascript - 为 array-id-ed 表单元素创建一个通用的 jquery 函数

html - 调整窗口大小时导航栏消失

javascript - Material-UI 工具提示 zIndex 在 Select 组件中的 MenuItem